|
|
|
@ -38,6 +38,8 @@ import org.gradle.api.artifacts.ModuleDependency; |
|
|
|
import org.gradle.api.artifacts.component.ModuleComponentIdentifier; |
|
|
|
import org.gradle.api.artifacts.component.ModuleComponentIdentifier; |
|
|
|
import org.gradle.api.artifacts.dsl.DependencyHandler; |
|
|
|
import org.gradle.api.artifacts.dsl.DependencyHandler; |
|
|
|
import org.gradle.api.artifacts.result.ResolvedArtifactResult; |
|
|
|
import org.gradle.api.artifacts.result.ResolvedArtifactResult; |
|
|
|
|
|
|
|
import org.gradle.api.file.FileCollection; |
|
|
|
|
|
|
|
import org.gradle.api.tasks.Classpath; |
|
|
|
import org.gradle.api.tasks.Input; |
|
|
|
import org.gradle.api.tasks.Input; |
|
|
|
import org.gradle.api.tasks.TaskAction; |
|
|
|
import org.gradle.api.tasks.TaskAction; |
|
|
|
|
|
|
|
|
|
|
|
@ -61,6 +63,8 @@ public class CheckClasspathForUnnecessaryExclusions extends DefaultTask { |
|
|
|
|
|
|
|
|
|
|
|
private final ConfigurationContainer configurations; |
|
|
|
private final ConfigurationContainer configurations; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private Configuration classpath; |
|
|
|
|
|
|
|
|
|
|
|
@Inject |
|
|
|
@Inject |
|
|
|
public CheckClasspathForUnnecessaryExclusions(DependencyHandler dependencyHandler, |
|
|
|
public CheckClasspathForUnnecessaryExclusions(DependencyHandler dependencyHandler, |
|
|
|
ConfigurationContainer configurations) { |
|
|
|
ConfigurationContainer configurations) { |
|
|
|
@ -72,11 +76,17 @@ public class CheckClasspathForUnnecessaryExclusions extends DefaultTask { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
public void setClasspath(Configuration classpath) { |
|
|
|
public void setClasspath(Configuration classpath) { |
|
|
|
|
|
|
|
this.classpath = classpath; |
|
|
|
this.exclusionsByDependencyId.clear(); |
|
|
|
this.exclusionsByDependencyId.clear(); |
|
|
|
this.dependencyById.clear(); |
|
|
|
this.dependencyById.clear(); |
|
|
|
classpath.getAllDependencies().all(this::processDependency); |
|
|
|
classpath.getAllDependencies().all(this::processDependency); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Classpath |
|
|
|
|
|
|
|
public FileCollection getClasspath() { |
|
|
|
|
|
|
|
return this.classpath; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
private void processDependency(Dependency dependency) { |
|
|
|
private void processDependency(Dependency dependency) { |
|
|
|
if (dependency instanceof ModuleDependency moduleDependency) { |
|
|
|
if (dependency instanceof ModuleDependency moduleDependency) { |
|
|
|
processDependency(moduleDependency); |
|
|
|
processDependency(moduleDependency); |
|
|
|
|