Skip to content

Commit 073a762

Browse files
committed
Declare TARGET_JVM_ENVIRONMENT_ATTRIBUTE attr for resolving Guava
1 parent 437d7f1 commit 073a762

3 files changed

Lines changed: 13 additions & 0 deletions

File tree

plugin-gradle/src/main/java/com/diffplug/gradle/spotless/GradleProvisioner.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,9 @@
2828
import org.gradle.api.artifacts.dsl.DependencyHandler;
2929
import org.gradle.api.attributes.Bundling;
3030
import org.gradle.api.attributes.Category;
31+
import org.gradle.api.attributes.java.TargetJvmEnvironment;
3132
import org.gradle.api.initialization.dsl.ScriptHandler;
33+
import org.gradle.util.GradleVersion;
3234
import org.slf4j.Logger;
3335
import org.slf4j.LoggerFactory;
3436

@@ -124,6 +126,10 @@ private static Provisioner forConfigurationContainer(Project project, Configurat
124126
config.attributes(attr -> {
125127
attr.attribute(Category.CATEGORY_ATTRIBUTE, project.getObjects().named(Category.class, Category.LIBRARY));
126128
attr.attribute(Bundling.BUNDLING_ATTRIBUTE, project.getObjects().named(Bundling.class, Bundling.EXTERNAL));
129+
// TARGET_JVM_ENVIRONMENT_ATTRIBUTE has been added in Gradle 7.0
130+
if (GradleVersion.current().compareTo(GradleVersion.version(SpotlessPlugin.VER_GRADLE_7)) >= 0) {
131+
attr.attribute(TargetJvmEnvironment.TARGET_JVM_ENVIRONMENT_ATTRIBUTE, project.getObjects().named(TargetJvmEnvironment.class, TargetJvmEnvironment.STANDARD_JVM));
132+
}
127133
});
128134
return config.resolve();
129135
} catch (Exception e) {

plugin-gradle/src/main/java/com/diffplug/gradle/spotless/SpotlessPlugin.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
public class SpotlessPlugin implements Plugin<Project> {
2828
static final String SPOTLESS_MODERN = "spotlessModern";
2929
static final String VER_GRADLE_min = "6.1.1";
30+
static final String VER_GRADLE_7 = "7.0";
3031
static final String VER_GRADLE_javaPluginExtension = "7.1";
3132
private static final int MINIMUM_JRE = 11;
3233

testlib/src/main/java/com/diffplug/spotless/TestProvisioner.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,9 @@
3333
import org.gradle.api.artifacts.dsl.RepositoryHandler;
3434
import org.gradle.api.attributes.Bundling;
3535
import org.gradle.api.attributes.Category;
36+
import org.gradle.api.attributes.java.TargetJvmEnvironment;
3637
import org.gradle.testfixtures.ProjectBuilder;
38+
import org.gradle.util.GradleVersion;
3739

3840
import com.diffplug.common.base.Errors;
3941
import com.diffplug.common.base.StandardSystemProperty;
@@ -73,6 +75,10 @@ private static Provisioner createWithRepositories(Consumer<RepositoryHandler> re
7375
config.attributes(attr -> {
7476
attr.attribute(Category.CATEGORY_ATTRIBUTE, project.getObjects().named(Category.class, Category.LIBRARY));
7577
attr.attribute(Bundling.BUNDLING_ATTRIBUTE, project.getObjects().named(Bundling.class, Bundling.EXTERNAL));
78+
// TARGET_JVM_ENVIRONMENT_ATTRIBUTE has been added in Gradle 7.0
79+
if (GradleVersion.current().compareTo(GradleVersion.version("7.0")) >= 0) {
80+
attr.attribute(TargetJvmEnvironment.TARGET_JVM_ENVIRONMENT_ATTRIBUTE, project.getObjects().named(TargetJvmEnvironment.class, TargetJvmEnvironment.STANDARD_JVM));
81+
}
7682
});
7783
try {
7884
return config.resolve();

0 commit comments

Comments
 (0)