diff options
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/rules/java/JavaSkylarkCommon.java | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaSkylarkCommon.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaSkylarkCommon.java index 50d6962bf3..7ac14a5c4e 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaSkylarkCommon.java +++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaSkylarkCommon.java @@ -13,8 +13,6 @@ // limitations under the License. package com.google.devtools.build.lib.rules.java; -import static com.google.common.base.Preconditions.checkNotNull; - import com.google.common.collect.ImmutableList; import com.google.common.collect.Iterables; import com.google.devtools.build.lib.actions.Artifact; @@ -343,7 +341,10 @@ public class JavaSkylarkCommon { ? NestedSetBuilder.<Artifact>emptySet(Order.STABLE_ORDER) : hostJavabaseProvider.getMiddlemanArtifact(); JavaToolchainProvider javaToolchainProvider = - checkNotNull(javaToolchain.getProvider(JavaToolchainProvider.class)); + javaToolchain.getProvider(JavaToolchainProvider.class); + if (javaToolchain == null) { + throw new EvalException(null, javaToolchain.getLabel() + " is not a java_toolchain rule."); + } JavaCompilationArtifacts artifacts = helper.build( javaSemantics, @@ -400,9 +401,12 @@ public class JavaSkylarkCommon { SkylarkRuleContext skylarkRuleContext, String javaToolchainAttr) throws EvalException { RuleContext ruleContext = skylarkRuleContext.getRuleContext(); ConfiguredTarget javaToolchainConfigTarget = - (ConfiguredTarget) checkNotNull(skylarkRuleContext.getAttr().getValue(javaToolchainAttr)); + (ConfiguredTarget) skylarkRuleContext.getAttr().getValue(javaToolchainAttr); JavaToolchainProvider toolchain = - checkNotNull(javaToolchainConfigTarget.getProvider(JavaToolchainProvider.class)); + javaToolchainConfigTarget.getProvider(JavaToolchainProvider.class); + if (toolchain == null) { + throw new EvalException(null, javaToolchainAttr + " is not a java_toolchain rule label"); + } return ImmutableList.copyOf(Iterables.concat( toolchain.getJavacOptions(), ruleContext.getTokenizedStringListAttr("javacopts"))); } |