@@ -4,6 +4,7 @@ import org.gradle.api.DefaultTask
44import org.gradle.api.artifacts.component.ModuleComponentIdentifier
55import org.gradle.api.artifacts.result.ResolvedComponentResult
66import org.gradle.api.file.RegularFileProperty
7+ import org.gradle.api.provider.ListProperty
78import org.gradle.api.provider.MapProperty
89import org.gradle.api.provider.SetProperty
910import org.gradle.api.tasks.Input
@@ -16,35 +17,35 @@ abstract class JavaVersionConsistencyCheck : DefaultTask() {
1617
1718 @get:Input abstract val aggregatedClasspath: SetProperty <ResolvedComponentResult >
1819
20+ @get:Input abstract val excludes: ListProperty <String >
21+
1922 @get:OutputFile abstract val reportFile: RegularFileProperty
2023
2124 @TaskAction
2225 fun compare () {
23- var potentiallyUnusedVersion = " "
24- var wrongVersions = " "
26+ var issues = " "
2527 definedVersions.get().forEach { (id, version) ->
2628 val resolved =
2729 aggregatedClasspath.get().find {
2830 val resolvedId = it.id
2931 resolvedId is ModuleComponentIdentifier && resolvedId.moduleIdentifier.toString() == id
3032 }
3133 if (resolved == null ) {
32- potentiallyUnusedVersion + = " Not used in production code: $id :$version \n "
34+ if (! excludes.get().contains(id)) {
35+ issues + = " Not used: $id :$version \n "
36+ }
3337 } else {
3438 val resolvedVersion = resolved.moduleVersion?.version
3539 if (resolvedVersion != version) {
36- wrongVersions + = " Wrong version: $id (declared=$version ; used=$resolvedVersion )\n "
40+ issues + = " Wrong version: $id (declared=$version ; used=$resolvedVersion )\n "
3741 }
3842 }
3943 }
4044
41- reportFile.get().asFile.writeText(potentiallyUnusedVersion + wrongVersions )
45+ reportFile.get().asFile.writeText(issues )
4246
43- if (! potentiallyUnusedVersion.isEmpty()) {
44- println (potentiallyUnusedVersion)
45- }
46- if (! wrongVersions.isEmpty()) {
47- throw RuntimeException (wrongVersions)
47+ if (! issues.isEmpty()) {
48+ throw RuntimeException (issues)
4849 }
4950 }
5051}
0 commit comments