aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/rules/java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules/java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/java/JavaBinary.java2
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/java/JavaCommon.java9
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/java/JavaLibrary.java2
3 files changed, 9 insertions, 4 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaBinary.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaBinary.java
index 750507d9d7..6bba8faf1b 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaBinary.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaBinary.java
@@ -438,7 +438,7 @@ public class JavaBinary implements RuleConfiguredTargetFactory {
JavaInfo.Builder javaInfoBuilder = JavaInfo.Builder.create();
common.addTransitiveInfoProviders(builder, javaInfoBuilder, filesToBuild, classJar);
- common.addGenJarsProvider(javaInfoBuilder, genClassJar, genSourceJar);
+ common.addGenJarsProvider(builder, javaInfoBuilder, genClassJar, genSourceJar);
JavaInfo javaInfo = javaInfoBuilder
.addProvider(JavaSourceJarsProvider.class, sourceJarsProvider)
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 6c39ae6316..7da5b33810 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
@@ -400,7 +400,7 @@ public class JavaCommon {
builder.addAll(Iterables.transform(currentRuleExports, TransitiveInfoCollection::getLabel));
for (TransitiveInfoCollection dep : currentRuleExports) {
- JavaExportsProvider exportsProvider = JavaInfo.getProvider(JavaExportsProvider.class, dep);
+ JavaExportsProvider exportsProvider = dep.getProvider(JavaExportsProvider.class);
if (exportsProvider != null) {
builder.addTransitive(exportsProvider.getTransitiveExports());
@@ -687,7 +687,9 @@ public class JavaCommon {
.add(
InstrumentedFilesProvider.class,
getInstrumentationFilesProvider(ruleContext, filesToBuild, instrumentationSpec))
- .addOutputGroup(OutputGroupInfo.FILES_TO_COMPILE, getFilesToCompile(classJar));
+ .add(JavaExportsProvider.class, exportsProvider)
+ .addOutputGroup(OutputGroupInfo.FILES_TO_COMPILE, getFilesToCompile(classJar))
+ .add(JavaCompilationInfoProvider.class, compilationInfoProvider);
javaInfoBuilder.addProvider(JavaExportsProvider.class, exportsProvider);
javaInfoBuilder.addProvider(JavaCompilationInfoProvider.class, compilationInfoProvider);
@@ -706,6 +708,7 @@ public class JavaCommon {
}
public void addGenJarsProvider(
+ RuleConfiguredTargetBuilder builder,
JavaInfo.Builder javaInfoBuilder,
@Nullable Artifact genClassJar,
@Nullable Artifact genSourceJar) {
@@ -717,6 +720,8 @@ public class JavaCommon {
activePlugins,
getDependencies(JavaGenJarsProvider.class));
+ builder.addProvider(JavaGenJarsProvider.class, genJarsProvider);
+
javaInfoBuilder.addProvider(JavaGenJarsProvider.class, genJarsProvider);
}
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaLibrary.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaLibrary.java
index 815f2bfb0a..b9f7360557 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaLibrary.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaLibrary.java
@@ -184,7 +184,7 @@ public class JavaLibrary implements RuleConfiguredTargetFactory {
JavaInfo.Builder javaInfoBuilder = JavaInfo.Builder.create();
common.addTransitiveInfoProviders(builder, javaInfoBuilder, filesToBuild, classJar);
- common.addGenJarsProvider(javaInfoBuilder, genClassJar, genSourceJar);
+ common.addGenJarsProvider(builder, javaInfoBuilder, genClassJar, genSourceJar);
NestedSet<Artifact> proguardSpecs = new ProguardLibrary(ruleContext).collectProguardSpecs();