diff options
author | Jake Petroules <jake.petroules@qt.io> | 2017-03-02 01:05:15 -0800 |
---|---|---|
committer | Jake Petroules <jake.petroules@qt.io> | 2017-06-13 15:43:44 +0000 |
commit | d5dc7a2571027168d1a74cbb2578848dc843e20e (patch) | |
tree | fa70112fc2eb06b82283dde24f5997a8d8490e95 /share/qbs/modules/java/utils.js | |
parent | a74e051d75e5a70179c0fbdc234169fa680cb7c7 (diff) | |
download | qbs-d5dc7a2571027168d1a74cbb2578848dc843e20e.tar.gz |
Simplify the Java compiler scanner tool
Previous attempts to overcomplicate this were counterproductive. The
short of it is that the Java compiler backend can generate additional
class files by way of transforming more complex language constructs into
simpler ones, which occurs AFTER the parsing stage. This means that the
source code parsing approach cannot work at all, since the list of
outputs depends on the compiler internals rather than solely on the
structure of the Java source code.
The source code parsing approach was advised against by a JDK engineer
who suggested alternative approaches.
Unfortunately, this patch "breaks" dry-run builds since dependencies may
not present when building Java source files... which is why this became
overcomplicated in the first place. TypeScript has the same issue, which
would be even more challenging to "solve" in a similar way as I tried to
"solve" the dry run issue for Java.
Task-number: QBS-1069
Change-Id: I8cef2268cd8845eda9f098e90decb81a40b2ab9c
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Diffstat (limited to 'share/qbs/modules/java/utils.js')
-rw-r--r-- | share/qbs/modules/java/utils.js | 5 |
1 files changed, 0 insertions, 5 deletions
diff --git a/share/qbs/modules/java/utils.js b/share/qbs/modules/java/utils.js index 2add147d5..ffee62372 100644 --- a/share/qbs/modules/java/utils.js +++ b/share/qbs/modules/java/utils.js @@ -218,12 +218,8 @@ function helperFullyQualifiedNames(type) { var names = [ "io/qt/qbs/Artifact", "io/qt/qbs/ArtifactListJsonWriter", - "io/qt/qbs/ArtifactListTextWriter", "io/qt/qbs/ArtifactListWriter", - "io/qt/qbs/ArtifactListXmlWriter", "io/qt/qbs/tools/JavaCompilerScannerTool", - "io/qt/qbs/tools/utils/ArtifactProcessor", - "io/qt/qbs/tools/utils/ArtifactScanner", "io/qt/qbs/tools/utils/JavaCompilerOptions", "io/qt/qbs/tools/utils/JavaCompilerScanner", "io/qt/qbs/tools/utils/JavaCompilerScanner$1", @@ -301,7 +297,6 @@ function outputArtifacts(product, inputs) { var javaArgs = [ "-classpath", process.workingDirectory() + (toolsJarPath ? (sep + toolsJarPath) : ""), "io/qt/qbs/tools/JavaCompilerScannerTool", - "--output-format", "json", ]; process.exec(ModUtils.moduleProperty(product, "interpreterFilePath"), javaArgs .concat(javacArguments(product, inputs, helperOverrideArgs(product))), true); |