-
Notifications
You must be signed in to change notification settings - Fork 3k
Description
Describe the bug
As of Gradle 9, it is recommended to enable the Gradle configuration cache to improve performance (You actually get notified about this). We tried to roll this out for our repositories, however we started noticing that when we enabled the Gradle configuration cache, Quarkus test things in multi-module projects started suddenly happening in parallel, causing issues around port conflicts of the started services.
Note that the gradle configuration cache will be enabled by default in Gradle 10, and users get told to enable this feature in Gradle 9, so this is something that Quarkus probably needs to support.
Expected behavior
We expect to be able to set org.gradle.configuration-cache=true
without causing issues with Quarkus test
Actual behavior
When we run a Gradle task that runs tests on all of our modules, it suddenly starts failing with:
java.util.concurrent.ExecutionException: io.quarkus.runtime.QuarkusBindException: Port already bound: 8081: Address already in use
Note that we don't use org.gradle.parallel, we know inter-project parallelism doesn't work with Quarkus. It is purely adding org.gradle.configuration-cache=true
that suddenly breaks Quarkus tests as if we enabled inter-project parallelism.
How to Reproduce?
- Clone https://gitlab.com/rug-digitallab/products/themis/themis-core.git
- Add
org.gradle.configuration-cache=true
togradle.properties
- Run
./gradlew test
Output of uname -a
or ver
Ubuntu 25.04
Output of java -version
OpenJDK 21.0.8
Quarkus version or git rev
Quarkus 3.25.3
Build tool (ie. output of mvnw --version
or gradlew --version
)
Gradle 9.0.0
Additional information
No response