diff --git a/instrumentation/spring/spring-boot-autoconfigure/build.gradle.kts b/instrumentation/spring/spring-boot-autoconfigure/build.gradle.kts index 7becabf33042..8fb4ec4fb790 100644 --- a/instrumentation/spring/spring-boot-autoconfigure/build.gradle.kts +++ b/instrumentation/spring/spring-boot-autoconfigure/build.gradle.kts @@ -31,18 +31,6 @@ configurations { } } -tasks { - named("compileJavaSpring3Java") { - sourceCompatibility = "17" - targetCompatibility = "17" - options.release.set(17) - } - - withType(Jar::class) { - from(sourceSets["javaSpring3"].output) - } -} - dependencies { compileOnly("org.springframework.boot:spring-boot-autoconfigure:$springBootVersion") annotationProcessor("org.springframework.boot:spring-boot-autoconfigure-processor:$springBootVersion") @@ -106,15 +94,15 @@ dependencies { testImplementation("io.opentelemetry:opentelemetry-exporter-zipkin") testImplementation(project(":instrumentation-annotations")) + // needed for the Spring Boot 3 support + implementation(project(":instrumentation:spring:spring-webmvc:spring-webmvc-6.0:library")) + // give access to common classes, e.g. InstrumentationConfigUtil add("javaSpring3CompileOnly", files(sourceSets.main.get().output.classesDirs)) add("javaSpring3CompileOnly", "org.springframework.boot:spring-boot-starter-web:3.2.4") add("javaSpring3CompileOnly", "io.opentelemetry:opentelemetry-sdk-extension-autoconfigure") add("javaSpring3CompileOnly", project(":instrumentation:spring:spring-web:spring-web-3.1:library")) add("javaSpring3CompileOnly", project(":instrumentation:spring:spring-webmvc:spring-webmvc-6.0:library")) - - // needed for the Spring Boot 3 support - implementation(project(":instrumentation:spring:spring-webmvc:spring-webmvc-6.0:library")) } val latestDepTest = findProperty("testLatestDeps") as Boolean @@ -151,9 +139,7 @@ testing { } } } - } - suites { val testLogbackMissing by registering(JvmTestSuite::class) { dependencies { implementation(project()) @@ -166,6 +152,27 @@ testing { } } } + + val testSpring3 by registering(JvmTestSuite::class) { + dependencies { + implementation(project()) + //implementation(sourceSets["javaSpring3"].output) + implementation("org.springframework.boot:spring-boot-starter-web:3.2.4") + implementation("io.opentelemetry:opentelemetry-sdk-extension-autoconfigure") + implementation(project(":instrumentation:spring:spring-web:spring-web-3.1:library")) + implementation(project(":instrumentation:spring:spring-webmvc:spring-webmvc-6.0:library")) + implementation("jakarta.servlet:jakarta.servlet-api:5.0.0") + implementation("org.springframework.boot:spring-boot-starter-test:3.2.4") { + exclude("org.junit.vintage", "junit-vintage-engine") + } + +// implementation("org.slf4j:slf4j-api") { +// version { +// strictly("1.7.32") +// } +// } + } + } } } @@ -191,4 +198,20 @@ tasks { jvmArgs("--add-opens=java.base/java.lang=ALL-UNNAMED") jvmArgs("-XX:+IgnoreUnrecognizedVMOptions") } + + named("compileJavaSpring3Java") { + sourceCompatibility = "17" + targetCompatibility = "17" + options.release.set(17) + } + + named("compileTestSpring3Java") { + sourceCompatibility = "17" + targetCompatibility = "17" + options.release.set(17) + } + + withType(Jar::class) { + from(sourceSets["javaSpring3"].output) + } }