diff options
Diffstat (limited to 'share')
-rw-r--r-- | share/qbs/modules/java/io/qt/qbs/tools/utils/JavaCompilerScanner.java | 13 | ||||
-rw-r--r-- | share/qbs/modules/java/utils.js | 4 |
2 files changed, 13 insertions, 4 deletions
diff --git a/share/qbs/modules/java/io/qt/qbs/tools/utils/JavaCompilerScanner.java b/share/qbs/modules/java/io/qt/qbs/tools/utils/JavaCompilerScanner.java index 368f5519e..1be804ee5 100644 --- a/share/qbs/modules/java/io/qt/qbs/tools/utils/JavaCompilerScanner.java +++ b/share/qbs/modules/java/io/qt/qbs/tools/utils/JavaCompilerScanner.java @@ -156,11 +156,18 @@ public class JavaCompilerScanner { Collections.sort(parsedOutputFilePathsArray); ArrayList<String> compilationOutputFilePathsArray = new ArrayList<String>(compilationOutputFilePaths); Collections.sort(compilationOutputFilePathsArray); + compilationOutputFilePaths.removeAll(parsedOutputFilePaths); + ArrayList<String> differenceArray = new ArrayList<String>(compilationOutputFilePaths); + Collections.sort(differenceArray); - throw new RuntimeException("The set of output files determined by source code parsing:\n\n" + System.err.println("The set of output files determined by source code parsing:\n\n" + join("\n", parsedOutputFilePathsArray) + "\n\n" - + "is missing some files that would be produced by the compiler:\n\n" - + join("\n", compilationOutputFilePathsArray) + "\n"); + + "is missing some files from the list that would be produced by the compiler:\n\n" + + join("\n", compilationOutputFilePathsArray) + "\n\n" + + "The missing files are:\n\n" + + join("\n", differenceArray) + "\n\n" + + "Compilation will still continue, though a build error *might* appear later;\n" + + "please check the bug report at https://bugreports.qt.io/browse/QBS-1069\n"); } return !parsedOutputFilePaths.isEmpty() ? 0 : 1; diff --git a/share/qbs/modules/java/utils.js b/share/qbs/modules/java/utils.js index 7e3679a5e..632fc8102 100644 --- a/share/qbs/modules/java/utils.js +++ b/share/qbs/modules/java/utils.js @@ -303,7 +303,9 @@ function outputArtifacts(product, inputs) { ]; process.exec(ModUtils.moduleProperty(product, "interpreterFilePath"), javaArgs .concat(javacArguments(product, inputs, helperOverrideArgs(product))), true); - return JSON.parse(process.readStdOut()); + var out = JSON.parse(process.readStdOut()); + console.error(process.readStdErr()); + return out; } finally { if (process) process.close(); |