diff --git a/build.gradle b/build.gradle index e52732e8a82..5a034e054aa 100644 --- a/build.gradle +++ b/build.gradle @@ -132,6 +132,11 @@ subprojects { dependencies { testImplementation 'ch.qos.logback:logback-classic:1.3.14' + if (project != project(':testcontainers')) { + // in order to compile classes which extend GenericContainer, etc + compileOnly libs.junit4 + testImplementation libs.junit4 + } } checkstyle { diff --git a/core/build.gradle b/core/build.gradle index 4dad6c61131..5b71788dadd 100644 --- a/core/build.gradle +++ b/core/build.gradle @@ -69,7 +69,8 @@ configurations.all { } dependencies { - api 'junit:junit:4.13.2' + // originally was api scope, but that's problematic for projects using junit 5 + implementation libs.junit4 api 'org.slf4j:slf4j-api:1.7.36' compileOnly 'org.jetbrains:annotations:24.1.0' testCompileOnly 'org.jetbrains:annotations:24.1.0' diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml new file mode 100644 index 00000000000..fbb4468639f --- /dev/null +++ b/gradle/libs.versions.toml @@ -0,0 +1,2 @@ +[libraries] +junit4 = { group = "junit", name = "junit", version = "4.13.2" } diff --git a/gradle/publishing.gradle b/gradle/publishing.gradle index 618ada345cc..bede01b3661 100644 --- a/gradle/publishing.gradle +++ b/gradle/publishing.gradle @@ -60,6 +60,8 @@ publishing { def apiDeps= project.configurations.api.resolvedConfiguration.firstLevelModuleDependencies def providedDeps = project.configurations.provided.resolvedConfiguration.firstLevelModuleDependencies def newApiDeps = apiDeps - providedDeps + def shaded = project.configurations.shaded.resolvedConfiguration.firstLevelModuleDependencies + def runtimeDeps = project.configurations.runtimeClasspath.resolvedConfiguration.firstLevelModuleDependencies - apiDeps - providedDeps - shaded def addDependencies = { Set resolvedDependencies, scope -> for (dependency in resolvedDependencies) { @@ -90,6 +92,7 @@ publishing { } addDependencies(newApiDeps, 'compile') addDependencies(providedDeps, 'provided') + addDependencies(runtimeDeps, 'runtime') } } }