aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/java_tools/buildjar/java/com/google/devtools/build
diff options
context:
space:
mode:
authorGravatar Philipp Wollermann <philwo@google.com>2015-06-09 13:06:40 +0000
committerGravatar Philipp Wollermann <philwo@google.com>2015-06-10 16:02:09 +0000
commitc820c70bdd527ac1f065c2fe4320dc06bbe9eaf5 (patch)
tree37491f2a055a67725385cf9335141f1be5bcb27d /src/java_tools/buildjar/java/com/google/devtools/build
parentb7ce7a84484e877fab21e5e5f2fc1befb55a5384 (diff)
Some small, random fixes for JavaBuilder that increase error reporting, fix JavaDoc strings, ...
I found having stack traces very helpful while I was debugging an issue where the JavaBuilder ran out of file handles and crashed, but only printed "Compilation failed: No more file handles" and didn't tell me which part of the code actually tried to open the file. -- MOS_MIGRATED_REVID=95529141
Diffstat (limited to 'src/java_tools/buildjar/java/com/google/devtools/build')
-rw-r--r--src/java_tools/buildjar/java/com/google/devtools/build/buildjar/AbstractJavaBuilder.java6
-rw-r--r--src/java_tools/buildjar/java/com/google/devtools/build/buildjar/BazelJavaBuilder.java7
-rw-r--r--src/java_tools/buildjar/java/com/google/devtools/build/buildjar/JarCreator.java1
-rw-r--r--src/java_tools/buildjar/java/com/google/devtools/build/buildjar/javac/BlazeJavacMain.java2
4 files changed, 9 insertions, 7 deletions
diff --git a/src/java_tools/buildjar/java/com/google/devtools/build/buildjar/AbstractJavaBuilder.java b/src/java_tools/buildjar/java/com/google/devtools/build/buildjar/AbstractJavaBuilder.java
index 1ba28bf0bc..766d1f55e7 100644
--- a/src/java_tools/buildjar/java/com/google/devtools/build/buildjar/AbstractJavaBuilder.java
+++ b/src/java_tools/buildjar/java/com/google/devtools/build/buildjar/AbstractJavaBuilder.java
@@ -13,7 +13,9 @@
// limitations under the License.
package com.google.devtools.build.buildjar;
+
import com.google.common.annotations.VisibleForTesting;
+import com.google.common.base.Throwables;
import com.google.common.io.Files;
import com.google.devtools.build.buildjar.javac.JavacRunner;
import com.google.devtools.build.buildjar.javac.JavacRunnerImpl;
@@ -85,9 +87,7 @@ public abstract class AbstractJavaBuilder extends AbstractLibraryBuilder {
} catch (JavacException e) {
message[0] = e.getMessage();
} catch (Exception e) {
- // Some exceptions have a null message, yet the stack trace is useful
- e.printStackTrace();
- message[0] = "java compilation threw exception: " + e.getMessage();
+ message[0] = Throwables.getStackTraceAsString(e);
}
}
}, 4L * 1024 * 1024); // 4MB stack
diff --git a/src/java_tools/buildjar/java/com/google/devtools/build/buildjar/BazelJavaBuilder.java b/src/java_tools/buildjar/java/com/google/devtools/build/buildjar/BazelJavaBuilder.java
index 0ba15cd4fd..63d3cac13c 100644
--- a/src/java_tools/buildjar/java/com/google/devtools/build/buildjar/BazelJavaBuilder.java
+++ b/src/java_tools/buildjar/java/com/google/devtools/build/buildjar/BazelJavaBuilder.java
@@ -102,8 +102,11 @@ public abstract class BazelJavaBuilder {
? new ReducedClasspathJavaLibraryBuilder()
: new SimpleJavaLibraryBuilder();
builder.run(build, System.err);
- } catch (IOException | InvalidCommandLineException e) {
- System.err.println(CMDNAME + " threw exception : " + e.getMessage());
+ } catch (InvalidCommandLineException e) {
+ System.err.println(CMDNAME + " threw exception: " + e.getMessage());
+ return 1;
+ } catch (IOException e) {
+ e.printStackTrace();
return 1;
}
return 0;
diff --git a/src/java_tools/buildjar/java/com/google/devtools/build/buildjar/JarCreator.java b/src/java_tools/buildjar/java/com/google/devtools/build/buildjar/JarCreator.java
index ead7ceb3dc..a233358263 100644
--- a/src/java_tools/buildjar/java/com/google/devtools/build/buildjar/JarCreator.java
+++ b/src/java_tools/buildjar/java/com/google/devtools/build/buildjar/JarCreator.java
@@ -191,7 +191,6 @@ public class JarCreator extends JarHelper {
createJar.execute();
} catch (IOException e) {
e.printStackTrace();
- System.err.println(e.getMessage());
System.exit(1);
}
long stop = System.currentTimeMillis();
diff --git a/src/java_tools/buildjar/java/com/google/devtools/build/buildjar/javac/BlazeJavacMain.java b/src/java_tools/buildjar/java/com/google/devtools/build/buildjar/javac/BlazeJavacMain.java
index eeb471c0bc..057c145a74 100644
--- a/src/java_tools/buildjar/java/com/google/devtools/build/buildjar/javac/BlazeJavacMain.java
+++ b/src/java_tools/buildjar/java/com/google/devtools/build/buildjar/javac/BlazeJavacMain.java
@@ -52,7 +52,7 @@ public class BlazeJavacMain {
* Compose {@link com.sun.tools.javac.main.Main} and perform custom setup before deferring to
* its compile() method.
*
- * Historically BlazeJavacMain extended javac's Main and overrode methods to get the desired
+ * <p>Historically BlazeJavacMain extended javac's Main and overrode methods to get the desired
* custom behaviour. That approach created incompatibilities when upgrading to newer versions of
* javac, so composition is preferred.
*/