diff --git a/buildSrc/src/main/java/org/springframework/boot/build/classpath/CheckClasspathForProhibitedDependencies.java b/buildSrc/src/main/java/org/springframework/boot/build/classpath/CheckClasspathForProhibitedDependencies.java index 70d39f0194..72acde870a 100644 --- a/buildSrc/src/main/java/org/springframework/boot/build/classpath/CheckClasspathForProhibitedDependencies.java +++ b/buildSrc/src/main/java/org/springframework/boot/build/classpath/CheckClasspathForProhibitedDependencies.java @@ -26,7 +26,9 @@ import org.gradle.api.Task; import org.gradle.api.artifacts.Configuration; import org.gradle.api.artifacts.ModuleVersionIdentifier; import org.gradle.api.file.FileCollection; +import org.gradle.api.provider.SetProperty; import org.gradle.api.tasks.Classpath; +import org.gradle.api.tasks.Input; import org.gradle.api.tasks.TaskAction; /** @@ -47,6 +49,9 @@ public abstract class CheckClasspathForProhibitedDependencies extends DefaultTas getOutputs().upToDateWhen((task) -> true); } + @Input + public abstract SetProperty getPermittedGroups(); + public void setClasspath(Configuration classpath) { this.classpath = classpath; } @@ -75,8 +80,8 @@ public abstract class CheckClasspathForProhibitedDependencies extends DefaultTas } private boolean prohibited(ModuleVersionIdentifier id) { - return PROHIBITED_GROUPS.contains(id.getGroup()) || prohibitedJavax(id) || prohibitedSlf4j(id) - || prohibitedJbossSpec(id); + return (!getPermittedGroups().get().contains(id.getGroup())) && (PROHIBITED_GROUPS.contains(id.getGroup()) + || prohibitedJavax(id) || prohibitedSlf4j(id) || prohibitedJbossSpec(id)); } private boolean prohibitedSlf4j(ModuleVersionIdentifier id) {