plugins { id "java" id("com.github.johnrengelman.shadow") version "6.0.0" } dependencies { compileOnly("io.opentelemetry:opentelemetry-sdk:${versions.opentelemetry}") compileOnly("io.opentelemetry:opentelemetry-sdk-extension-autoconfigure:${versions.opentelemetryAlpha}") compileOnly("io.opentelemetry.javaagent:opentelemetry-javaagent-spi:${versions.opentelemetryJavaagent}") } tasks { shadowJar { mergeServiceFiles() exclude("**/module-info.class") // Prevents conflict with other SLF4J instances. Important for premain. relocate("org.slf4j", "io.opentelemetry.javaagent.slf4j") // rewrite dependencies calling Logger.getLogger relocate("java.util.logging.Logger", "io.opentelemetry.javaagent.bootstrap.PatchLogger") // prevents conflict with library instrumentation relocate("io.opentelemetry.instrumentation.api", "io.opentelemetry.javaagent.shaded.instrumentation.api") // relocate OpenTelemetry API relocate("io.opentelemetry.api", "io.opentelemetry.javaagent.shaded.io.opentelemetry.api") relocate("io.opentelemetry.context", "io.opentelemetry.javaagent.shaded.io.opentelemetry.context") } }