Remove the instrumentationMetadata and instrumentedJar fields from the java rules.

They are not used anymore after the flag --experimental_java_coverage was
removed.

RELNOTES: None.
PiperOrigin-RevId: 243773707
diff --git a/src/main/java/com/google/devtools/build/lib/bazel/rules/java/BazelJavaSemantics.java b/src/main/java/com/google/devtools/build/lib/bazel/rules/java/BazelJavaSemantics.java
index 2fe0580..cba7b1d 100644
--- a/src/main/java/com/google/devtools/build/lib/bazel/rules/java/BazelJavaSemantics.java
+++ b/src/main/java/com/google/devtools/build/lib/bazel/rules/java/BazelJavaSemantics.java
@@ -343,14 +343,6 @@
     }
     arguments.add(new ComputedClasspathSubstitution(classpath, workspacePrefix, isRunfilesEnabled));
 
-    JavaCompilationArtifacts javaArtifacts = javaCommon.getJavaCompilationArtifacts();
-    String path =
-        javaArtifacts.getInstrumentedJar() != null
-            ? "${JAVA_RUNFILES}/"
-            + workspacePrefix
-            + javaArtifacts.getInstrumentedJar().getRootRelativePath().getPathString()
-            : "";
-
     if (ruleContext.getConfiguration().isCodeCoverageEnabled()) {
       if (createCoverageMetadataJar) {
         Artifact runtimeClassPathArtifact =
@@ -674,13 +666,6 @@
     return jvmFlags.build();
   }
 
-  /**
-   * Returns whether coverage has instrumented artifacts.
-   */
-  public static boolean hasInstrumentationMetadata(JavaTargetAttributes.Builder attributes) {
-    return !attributes.getInstrumentationMetadata().isEmpty();
-  }
-
   @Override
   public String addCoverageSupport(JavaCompilationHelper helper, Artifact executable) {
     // This method can be called only for *_binary/*_test targets.
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidCommon.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidCommon.java
index c5bec8d..3547e22 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidCommon.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidCommon.java
@@ -802,10 +802,6 @@
     return classJar;
   }
 
-  public Artifact getInstrumentedJar() {
-    return javaCommon.getJavaCompilationArtifacts().getInstrumentedJar();
-  }
-
   public NestedSet<Artifact> getTransitiveNeverLinkLibraries() {
     return transitiveNeverlinkLibraries;
   }
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidLocalTestBase.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidLocalTestBase.java
index 97543b6..a34a71f 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidLocalTestBase.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidLocalTestBase.java
@@ -442,13 +442,6 @@
     builder.addTargets(depsForRunfiles, JavaRunfilesProvider.TO_RUNFILES);
     builder.addTargets(depsForRunfiles, RunfilesProvider.DEFAULT_RUNFILES);
 
-    if (ruleContext.getConfiguration().isCodeCoverageEnabled()) {
-      Artifact instrumentedJar = javaCommon.getJavaCompilationArtifacts().getInstrumentedJar();
-      if (instrumentedJar != null) {
-        builder.addArtifact(instrumentedJar);
-      }
-    }
-
     // We assume that the runtime jars will not have conflicting artifacts
     // with the same root relative path
     builder.addTransitiveArtifactsWrappedInStableOrder(javaCommon.getRuntimeClasspath());
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaCommon.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaCommon.java
index e163582..4d0cf73 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaCommon.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaCommon.java
@@ -797,7 +797,6 @@
         JavaCompilationArgsProvider.legacyFromTargets(
             runtimeDepInfo, semantics.isJavaProtoLibraryStrictDeps(ruleContext));
     attributes.addRuntimeClassPathEntries(provider.getRuntimeJars());
-    attributes.addInstrumentationMetadataEntries(provider.getInstrumentationMetadata());
   }
 
   /**
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompilationArgsProvider.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompilationArgsProvider.java
index f688a6d..f2029b2 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompilationArgsProvider.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompilationArgsProvider.java
@@ -43,7 +43,6 @@
           NestedSetBuilder.create(Order.NAIVE_LINK_ORDER),
           NestedSetBuilder.create(Order.NAIVE_LINK_ORDER),
           NestedSetBuilder.create(Order.NAIVE_LINK_ORDER),
-          NestedSetBuilder.create(Order.NAIVE_LINK_ORDER),
           NestedSetBuilder.create(Order.NAIVE_LINK_ORDER));
 
   @AutoCodec.Instantiator
@@ -53,7 +52,6 @@
       NestedSet<Artifact> transitiveCompileTimeJars,
       NestedSet<Artifact> directFullCompileTimeJars,
       NestedSet<Artifact> transitiveFullCompileTimeJars,
-      NestedSet<Artifact> instrumentationMetadata,
       NestedSet<Artifact> compileTimeJavaDependencyArtifacts) {
     return new AutoValue_JavaCompilationArgsProvider(
         runtimeJars,
@@ -61,7 +59,6 @@
         transitiveCompileTimeJars,
         directFullCompileTimeJars,
         transitiveFullCompileTimeJars,
-        instrumentationMetadata,
         compileTimeJavaDependencyArtifacts);
   }
 
@@ -96,9 +93,6 @@
    */
   public abstract NestedSet<Artifact> getTransitiveFullCompileTimeJars();
 
-  /** Returns recursively collected instrumentation metadata. */
-  public abstract NestedSet<Artifact> getInstrumentationMetadata();
-
   /**
    * Returns non-recursively collected Java dependency artifacts for computing a restricted
    * classpath when building this target (called when strict_java_deps = 1).
@@ -184,7 +178,6 @@
         .addDirectCompileTimeJars(
             /* interfaceJars= */ args.getTransitiveCompileTimeJars(),
             /* fullJars= */ args.getTransitiveFullCompileTimeJars())
-        .addInstrumentationMetadata(args.getInstrumentationMetadata())
         .addRuntimeJars(args.getRuntimeJars())
         .build();
   }
@@ -237,8 +230,6 @@
         NestedSetBuilder.naiveLinkOrder();
     private final NestedSetBuilder<Artifact> transitiveFullCompileTimeJarsBuilder =
         NestedSetBuilder.naiveLinkOrder();
-    private final NestedSetBuilder<Artifact> instrumentationMetadataBuilder =
-        NestedSetBuilder.naiveLinkOrder();
     private final NestedSetBuilder<Artifact> compileTimeJavaDependencyArtifactsBuilder =
         NestedSetBuilder.naiveLinkOrder();
 
@@ -259,8 +250,6 @@
               Order.NAIVE_LINK_ORDER, other.getCompileTimeJars()),
           /* fullJars= */ NestedSetBuilder.wrap(
               Order.NAIVE_LINK_ORDER, other.getFullCompileTimeJars()));
-      addInstrumentationMetadata(
-          NestedSetBuilder.wrap(Order.NAIVE_LINK_ORDER, other.getInstrumentationMetadata()));
       return this;
     }
 
@@ -314,16 +303,6 @@
       return this;
     }
 
-    public Builder addInstrumentationMetadata(Artifact instrumentationMetadata) {
-      this.instrumentationMetadataBuilder.add(instrumentationMetadata);
-      return this;
-    }
-
-    public Builder addInstrumentationMetadata(NestedSet<Artifact> instrumentationMetadata) {
-      this.instrumentationMetadataBuilder.addTransitive(instrumentationMetadata);
-      return this;
-    }
-
     public Builder addCompileTimeJavaDependencyArtifacts(
         NestedSet<Artifact> compileTimeJavaDependencyArtifacts) {
       this.compileTimeJavaDependencyArtifactsBuilder.addTransitive(
@@ -388,7 +367,6 @@
       if (!ClasspathType.COMPILE_ONLY.equals(type)) {
         runtimeJarsBuilder.addTransitive(args.getRuntimeJars());
       }
-      instrumentationMetadataBuilder.addTransitive(args.getInstrumentationMetadata());
       return this;
     }
 
@@ -399,7 +377,6 @@
           && transitiveCompileTimeJarsBuilder.isEmpty()
           && directFullCompileTimeJarsBuilder.isEmpty()
           && transitiveFullCompileTimeJarsBuilder.isEmpty()
-          && instrumentationMetadataBuilder.isEmpty()
           && compileTimeJavaDependencyArtifactsBuilder.isEmpty()) {
         return EMPTY;
       }
@@ -409,7 +386,6 @@
           transitiveCompileTimeJarsBuilder.build(),
           directFullCompileTimeJarsBuilder.build(),
           transitiveFullCompileTimeJarsBuilder.build(),
-          instrumentationMetadataBuilder.build(),
           compileTimeJavaDependencyArtifactsBuilder.build());
     }
   }
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 537a2be..04cc55f 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
@@ -48,14 +48,9 @@
 
   abstract ImmutableList<Artifact> getFullCompileTimeJars();
 
-  public abstract ImmutableList<Artifact> getInstrumentationMetadata();
-
   @Nullable
   public abstract Artifact getCompileTimeDependencyArtifact();
 
-  @Nullable
-  public abstract Artifact getInstrumentedJar();
-
   /** Returns a builder for a {@link JavaCompilationArtifacts}. */
   public static Builder builder() {
     return new Builder();
@@ -67,16 +62,12 @@
       ImmutableList<Artifact> runtimeJars,
       ImmutableList<Artifact> compileTimeJars,
       ImmutableList<Artifact> fullCompileTimeJars,
-      ImmutableList<Artifact> instrumentationMetadata,
-      Artifact compileTimeDependencyArtifact,
-      Artifact instrumentedJar) {
+      Artifact compileTimeDependencyArtifact) {
     return new AutoValue_JavaCompilationArtifacts(
         ImmutableList.copyOf(runtimeJars),
         ImmutableList.copyOf(compileTimeJars),
         ImmutableList.copyOf(fullCompileTimeJars),
-        ImmutableList.copyOf(instrumentationMetadata),
-        compileTimeDependencyArtifact,
-        instrumentedJar);
+        compileTimeDependencyArtifact);
   }
 
   /** A builder for {@link JavaCompilationArtifacts}. */
@@ -84,9 +75,7 @@
     private final Set<Artifact> runtimeJars = new LinkedHashSet<>();
     private final Set<Artifact> compileTimeJars = new LinkedHashSet<>();
     private final Set<Artifact> fullCompileTimeJars = new LinkedHashSet<>();
-    private final Set<Artifact> instrumentationMetadata = new LinkedHashSet<>();
     private Artifact compileTimeDependencies;
-    private Artifact instrumentedJar;
 
     public JavaCompilationArtifacts build() {
       Preconditions.checkState(fullCompileTimeJars.size() == compileTimeJars.size());
@@ -94,9 +83,7 @@
           ImmutableList.copyOf(runtimeJars),
           ImmutableList.copyOf(compileTimeJars),
           ImmutableList.copyOf(fullCompileTimeJars),
-          ImmutableList.copyOf(instrumentationMetadata),
-          compileTimeDependencies,
-          instrumentedJar);
+          compileTimeDependencies);
     }
 
     public Builder addRuntimeJar(Artifact jar) {
@@ -131,19 +118,9 @@
       return this;
     }
 
-    public Builder addInstrumentationMetadata(Artifact instrumentationMetadata) {
-      this.instrumentationMetadata.add(instrumentationMetadata);
-      return this;
-    }
-
     public Builder setCompileTimeDependencies(@Nullable Artifact compileTimeDependencies) {
       this.compileTimeDependencies = compileTimeDependencies;
       return this;
     }
-
-    public Builder setInstrumentedJar(@Nullable Artifact instrumentedJar) {
-      this.instrumentedJar = instrumentedJar;
-      return this;
-    }
   }
 }
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaLibraryHelper.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaLibraryHelper.java
index 9bb4aed..0c24bd5 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaLibraryHelper.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaLibraryHelper.java
@@ -338,7 +338,6 @@
 
     attributes.addCompileTimeClassPathEntries(argsProvider.getTransitiveCompileTimeJars());
     attributes.addRuntimeClassPathEntries(argsProvider.getRuntimeJars());
-    attributes.addInstrumentationMetadataEntries(argsProvider.getInstrumentationMetadata());
   }
 
   private boolean isStrict() {
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaTargetAttributes.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaTargetAttributes.java
index dbd522c..302d656 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaTargetAttributes.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaTargetAttributes.java
@@ -71,7 +71,6 @@
     private final Map<PathFragment, Artifact> resources = new LinkedHashMap<>();
     private final NestedSetBuilder<Artifact> resourceJars = NestedSetBuilder.stableOrder();
     private final List<Artifact> messages = new ArrayList<>();
-    private final List<Artifact> instrumentationMetadata = new ArrayList<>();
     private final List<Artifact> sourceJars = new ArrayList<>();
 
     private final List<Artifact> classPathResources = new ArrayList<>();
@@ -131,7 +130,6 @@
       Preconditions.checkArgument(!built);
       addCompileTimeClassPathEntries(context.getTransitiveCompileTimeJars());
       addRuntimeClassPathEntries(context.getRuntimeJars());
-      addInstrumentationMetadataEntries(context.getInstrumentationMetadata());
       return this;
     }
 
@@ -241,12 +239,6 @@
       return this;
     }
 
-    public Builder addInstrumentationMetadataEntries(Iterable<Artifact> metadataEntries) {
-      Preconditions.checkArgument(!built);
-      Iterables.addAll(instrumentationMetadata, metadataEntries);
-      return this;
-    }
-
     public Builder addNativeLibrary(Artifact nativeLibrary) {
       Preconditions.checkArgument(!built);
       String name = nativeLibrary.getFilename();
@@ -371,15 +363,6 @@
      *     state in the {@link Builder}.
      */
     @Deprecated
-    public List<Artifact> getInstrumentationMetadata() {
-      return instrumentationMetadata;
-    }
-
-    /**
-     * @deprecated prefer to use a built {@link JavaTargetAttributes} instead of accessing mutable
-     *     state in the {@link Builder}.
-     */
-    @Deprecated
     public boolean hasSourceJars() {
       return !sourceJars.isEmpty();
     }
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/proto/StrictDepsUtils.java b/src/main/java/com/google/devtools/build/lib/rules/java/proto/StrictDepsUtils.java
index 09217ec..fd45806 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/java/proto/StrictDepsUtils.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/java/proto/StrictDepsUtils.java
@@ -57,8 +57,7 @@
             .addDirectCompileTimeJars(
                 /* interfaceJars= */ args.getDirectCompileTimeJars(),
                 /* fullJars= */ args.getDirectFullCompileTimeJars())
-            .addTransitiveCompileTimeJars(args.getTransitiveCompileTimeJars())
-            .addInstrumentationMetadata(args.getInstrumentationMetadata());
+            .addTransitiveCompileTimeJars(args.getTransitiveCompileTimeJars());
       }
       // Don't collect .jdeps recursively for legacy "feature" compatibility reasons. Collecting
       // .jdeps here is probably a mistake; see JavaCompilationArgsProvider#makeNonStrict.
diff --git a/src/test/java/com/google/devtools/build/lib/rules/java/JavaSkylarkApiTest.java b/src/test/java/com/google/devtools/build/lib/rules/java/JavaSkylarkApiTest.java
index d87b5bd..49caa9e 100644
--- a/src/test/java/com/google/devtools/build/lib/rules/java/JavaSkylarkApiTest.java
+++ b/src/test/java/com/google/devtools/build/lib/rules/java/JavaSkylarkApiTest.java
@@ -2149,10 +2149,6 @@
         args.getTransitiveCompileTimeJars(), otherArgs.getTransitiveCompileTimeJars())) {
       return false;
     }
-    if (!nestedSetsOfArtifactHaveTheSameParent(
-        args.getInstrumentationMetadata(), otherArgs.getInstrumentationMetadata())) {
-      return false;
-    }
     if (!nestedSetsOfArtifactHaveTheSameParent(args.getRuntimeJars(), otherArgs.getRuntimeJars())) {
       return false;
     }