Caleb Cushing
09/18/2025, 11:31 AMincludeBuild . The composite projects only job is to execute these like they're one build, not even trying to use them with each other.
I had originally thought that since they all have their own dependencies working that I could just
includeBuild("directory") but that's not working. Thought maybe I could add a copy of my dependency resolution, but also not working
> Could not resolve all dependencies for configuration 'classpath'.
> Resolved 'com.google.j2objc:j2objc-annotations:3.1' which is not part of the dependency lock state
> Resolved 'com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava' which is not part of the dependency lock state
> Resolved 'com.google.guava:failureaccess:1.0.3' which is not part of the dependency lock state
> Resolved 'org.slf4j:slf4j-api:1.7.36' which is not part of the dependency lock state
> Resolved 'org.eclipse.jgit:org.eclipse.jgit:7.3.0.202506031305-r' which is not part of the dependency lock state
> Resolved 'com.google.errorprone:error_prone_annotations:2.41.0' which is not part of the dependency lock state
> Did not resolve 'com.xenoterracide.gradle.semver:com.xenoterracide.gradle.semver.gradle.plugin:0.12.1' which is part of the dependency lock state
> Resolved 'com.google.guava:guava:33.5.0-jre' which is not part of the dependency lock state
> Could not find any matches for com.xenoterracide:tools:0.+ as no versions of com.xenoterracide:tools are available.
Searched in the following locations:
- <https://plugins.gradle.org/m2/com/xenoterracide/tools/maven-metadata.xml>
Required by:
buildscript of project ':gradle-convention' > project :gradle-semver:semver > project :gradle-semver:git
https://scans.gradle.com/s/glkk5pgic2mdwCaleb Cushing
09/18/2025, 11:33 AMVampire
09/18/2025, 11:37 AMVampire
09/18/2025, 11:38 AMCaleb Cushing
09/18/2025, 11:39 AMtools and not picking it up... I could try disabling the locks... but I'd bet money that just gives a different errorCaleb Cushing
09/18/2025, 11:40 AMCaleb Cushing
09/18/2025, 11:45 AMCaleb Cushing
09/18/2025, 11:45 AMVampire
09/18/2025, 11:46 AMCaleb Cushing
09/18/2025, 11:47 AMCaleb Cushing
09/18/2025, 11:47 AMCaleb Cushing
09/18/2025, 11:48 AMincludeBuild("gradle-semver") works, but all of the rest are causing this failure 😕Caleb Cushing
09/18/2025, 11:50 AMCaleb Cushing
09/18/2025, 11:51 AMCaleb Cushing
09/18/2025, 11:55 AMincludeBuild on it. In order to make things work you have to setup a github pat per documentation in say the spring-app-commons (or any of the submodules)
❯ cat ~/.gradle/gradle.properties
ghUsername = xenoterracide
ghPassword = ghp_...
https://github.com/xenoterracide/ProjectsCaleb Cushing
09/23/2025, 3:21 AMincludeBuild
pluginManagement {
repositories {
gradlePluginPortal()
}
includeBuild("gradle-semver")
includeBuild("gradle-convention")
}
I find it strange because I'm not trying to do an apply here... all I'm doing is including the builds. Junie figured this out O.o I hate it 😕
You attached multiple independent builds via a composite (includeBuild). As soon as one of those builds (here, gradle-convention) applies the gradle-semver plugin, Gradle tries to resolve that plugin from the plugin repositories. Because the semver plugin internally depends on your java-commons library (com.xenoterracide:tools), that dependency also needs to be resolvable during plugin/classpath resolution.
this is even more fun because that dependency gets baked into the output, and so that makes me wonder 2 things... one if this plugin works for not me... and 2 if the metadata is wrong since tools is supposed to be shadowed in the jar.