@@ -18,6 +18,7 @@ class GradleBuild {
1818 final File libModuleInfoFile
1919
2020 final String gradleVersionUnderTest = System . getProperty(" gradleVersionUnderTest" )
21+ boolean canUseProjectIsolation = gradleVersionUnderTest == null
2122
2223 GradleBuild (File projectDir = Files . createTempDirectory(" gradle-build" ). toFile()) {
2324 this . projectDir = projectDir
@@ -40,7 +41,6 @@ class GradleBuild {
4041 '''
4142 appBuildFile << '''
4243 plugins {
43- id("org.gradlex.java-module-dependencies")
4444 id("org.gradlex.java-module-testing")
4545 id("application")
4646 }
@@ -78,14 +78,19 @@ class GradleBuild {
7878
7979 libBuildFile << '''
8080 plugins {
81- id("org.gradlex.java-module-dependencies")
8281 id("org.gradlex.java-module-testing")
8382 id("java-library")
8483 }
8584 group = "org.example"
8685 '''
8786 }
8887
88+ void useJavaModuleDependenciesPlugin () {
89+ canUseProjectIsolation = false // 'java-module-dependencies' not yet fully compatible
90+ appBuildFile. text = appBuildFile. text. replace(' plugins {' , ' plugins { id("org.gradlex.java-module-dependencies")' )
91+ libBuildFile. text = libBuildFile. text. replace(' plugins {' , ' plugins { id("org.gradlex.java-module-dependencies")' )
92+ }
93+
8994 File file (String path ) {
9095 new File (projectDir, path). tap {
9196 it. getParentFile(). mkdirs()
@@ -109,11 +114,15 @@ class GradleBuild {
109114 }
110115
111116 GradleRunner runner (String ... args ) {
117+ List<String > latestFeaturesArgs = canUseProjectIsolation ? [
118+ ' --configuration-cache' ,
119+ ' -Dorg.gradle.unsafe.isolated-projects=true'
120+ ] : []
112121 GradleRunner . create()
113122 .forwardOutput()
114123 .withPluginClasspath()
115124 .withProjectDir(projectDir)
116- .withArguments(Arrays . asList(args) + ' -s' + ' --configuration-cache' )
125+ .withArguments(Arrays . asList(args) + latestFeaturesArgs + ' -s' + ' --configuration-cache' )
117126 .withDebug(ManagementFactory . getRuntimeMXBean(). getInputArguments(). toString(). contains(" -agentlib:jdwp" )). with {
118127 gradleVersionUnderTest ? it. withGradleVersion(gradleVersionUnderTest) : it
119128 }
0 commit comments