Hi! I have a project that kind of grew faster than my understanding of Gradle, and now I can’t quite figure out why it’s working the way it is.
In particular, I have a transitive dependency to liquibase-core
that Gradle resolves to 4.5.0, even though the packages that actually depend on it seem to depend on 4.9.1, and I can’t figure out why.
This is what a build scan shows:
Note that
detachedConfiguration41
asks for 4.5.0. I can’t figure out how to determine where that version came from.
When running gradle -q dependencies
the only occurrence is this:
+--- com.atlassian.connect:atlassian-connect-spring-boot-jpa-starter:2.3.6
| +--- org.liquibase:liquibase-core:4.9.1 -> 4.5.0
| | \--- javax.xml.bind:jaxb-api:2.3.0 -> 2.3.1
| | \--- javax.activation:javax.activation-api:1.2.0
Running it with --debug
I get this output:
[DEBUG] [io.spring.gradle.dependencymanagement.internal.VersionConfiguringAction] Processing dependency ‘org.liquibase:liquibase-core:4.9.1’
[DEBUG] [io.spring.gradle.dependencymanagement.internal.DependencyManagementContainer] Found managed version ‘4.5.0’ for dependency ‘org.liquibase:liquibase-core’ in global dependency management
[DEBUG] [io.spring.gradle.dependencymanagement.internal.VersionConfiguringAction] Using version ‘4.5.0’ for dependency ‘org.liquibase:liquibase-core:4.9.1’
Any idea where that “global dependency management” found the 4.5.0 version?