Improve an assertion failure message

PiperOrigin-RevId: 341513332
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompilationArtifacts.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompilationArtifacts.java
index 04cc55f..7201dd8 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompilationArtifacts.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompilationArtifacts.java
@@ -14,8 +14,9 @@
 
 package com.google.devtools.build.lib.rules.java;
 
+import static com.google.common.base.Preconditions.checkState;
+
 import com.google.auto.value.AutoValue;
-import com.google.common.base.Preconditions;
 import com.google.common.collect.ImmutableList;
 import com.google.common.collect.Iterables;
 import com.google.devtools.build.lib.actions.Artifact;
@@ -78,7 +79,7 @@
     private Artifact compileTimeDependencies;
 
     public JavaCompilationArtifacts build() {
-      Preconditions.checkState(fullCompileTimeJars.size() == compileTimeJars.size());
+      validate();
       return create(
           ImmutableList.copyOf(runtimeJars),
           ImmutableList.copyOf(compileTimeJars),
@@ -86,6 +87,14 @@
           compileTimeDependencies);
     }
 
+    private void validate() {
+      checkState(
+          fullCompileTimeJars.size() == compileTimeJars.size(),
+          "Expected the same number of interface and implementation jars:\n%s\n%s\n",
+          compileTimeJars,
+          fullCompileTimeJars);
+    }
+
     public Builder addRuntimeJar(Artifact jar) {
       this.runtimeJars.add(jar);
       return this;
@@ -108,13 +117,11 @@
       return this;
     }
 
-    public Builder addInterfaceJars(Iterable<Artifact> jars) {
-      Iterables.addAll(this.compileTimeJars, jars);
-      return this;
-    }
-
-    Builder addFullCompileTimeJars(Iterable<Artifact> jars) {
-      Iterables.addAll(this.fullCompileTimeJars, jars);
+    Builder addInterfaceJarsWithFullJars(
+        Iterable<Artifact> compileTimeJars, Iterable<Artifact> fullCompileTimeJars) {
+      Iterables.addAll(this.compileTimeJars, compileTimeJars);
+      Iterables.addAll(this.fullCompileTimeJars, fullCompileTimeJars);
+      validate();
       return this;
     }
 
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaImport.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaImport.java
index ea19e39..1e07b5f 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaImport.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaImport.java
@@ -178,9 +178,8 @@
       ImmutableList<Artifact> jars, ImmutableList<Artifact> interfaceJars) {
     return new JavaCompilationArtifacts.Builder()
         .addRuntimeJars(jars)
-        .addFullCompileTimeJars(jars)
         // interfaceJars Artifacts have proper owner labels
-        .addInterfaceJars(interfaceJars)
+        .addInterfaceJarsWithFullJars(interfaceJars, jars)
         .build();
   }