aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-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
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/java/JavaCompileAction.java11
5 files changed, 13 insertions, 14 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.
*/
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompileAction.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompileAction.java
index 505aae862f..6b9fcbb9a8 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompileAction.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompileAction.java
@@ -378,7 +378,7 @@ public class JavaCompileAction extends AbstractAction {
}
};
- executor.getSpawnActionContext(getMnemonic()).exec(spawn, actionExecutionContext);
+ getContext(executor).exec(spawn, actionExecutionContext);
} catch (ExecException e) {
throw e.toActionExecutionException("Java compilation in rule '" + getOwner().getLabel() + "'",
executor.getVerboseFailures(), this);
@@ -422,8 +422,7 @@ public class JavaCompileAction extends AbstractAction {
@Override
public ResourceSet estimateResourceConsumption(Executor executor) {
- SpawnActionContext context = getContext(executor);
- if (context.isRemotable(getMnemonic(), true)) {
+ if (getContext(executor).isRemotable(getMnemonic(), true)) {
return ResourceSet.ZERO;
}
return LOCAL_RESOURCES;
@@ -677,9 +676,8 @@ public class JavaCompileAction extends AbstractAction {
/**
* Gets the name of the target that produced the given jar artifact.
*
- * When specifying jars directly in the "srcs" attribute of a rule (mostly
- * for third_party libraries), there is no generating action, so we just
- * return the jar name in label form.
+ * <p>When specifying jars directly in the "srcs" attribute of a rule (mostly for third_party
+ * libraries), there is no generating action, so we just return the jar name in label form.
*/
private static Label getTargetName(Artifact jar) {
return Preconditions.checkNotNull(jar.getOwner(), jar);
@@ -909,7 +907,6 @@ public class JavaCompileAction extends AbstractAction {
directJars,
strictJavaDeps,
compileTimeDependencyArtifacts,
-
semantics);
}