Repository navigation
Closed as not planned
Closed as not planned
Copy link
Labels
Description
Module
Oracle Free
Testcontainers version
2.0.2
Using the latest Testcontainers version?
Yes
Host OS
MacOS
Host Arch
ARM
Docker version
Client:
Version: 29.0.1
API version: 1.52
Go version: go1.25.4
Git commit: eedd969
Built: Fri Nov 14 16:16:57 2025
OS/Arch: darwin/arm64
Context: desktop-linux
Server: Docker Desktop 4.52.0 (210994)
Engine:
Version: 29.0.1
API version: 1.52 (minimum version 1.44)
Go version: go1.25.4
Git commit: 198b5e3
Built: Fri Nov 14 16:18:20 2025
OS/Arch: linux/arm64
Experimental: false
containerd:
Version: v2.1.5
GitCommit: fcd43222d6b07379a4be9786bda52438f0dd16a1
runc:
Version: 1.3.3
GitCommit: v1.3.3-0-gd842d771
docker-init:
Version: 0.19.0
GitCommit: de40ad0What happened?
testcontainers 2.x.x version unshaded org.apache.commons from it's jar and it breaks the usage of OracleContainer class.
Relevant log output
java.lang.NoClassDefFoundError: org/testcontainers/shaded/org/apache/commons/lang3/StringUtils
at org.testcontainers.oracle.OracleContainer.withUsername(OracleContainer.java:129)
...
at java.base/jdk.internal.misc.Unsafe.ensureClassInitialized0(Native Method)
at java.base/jdk.internal.misc.Unsafe.ensureClassInitialized(Unsafe.java:1155)
at java.base/java.lang.reflect.Field.acquireFieldAccessor(Field.java:1132)
at java.base/java.lang.reflect.Field.getFieldAccessor(Field.java:1113)
at java.base/java.lang.reflect.Field.get(Field.java:425)
at org.testcontainers.junit.jupiter.TestcontainersExtension.getContainerInstance(TestcontainersExtension.java:248)
at org.testcontainers.junit.jupiter.TestcontainersExtension.lambda$findSharedContainers$10(TestcontainersExtension.java:209)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:921)
at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:682)
at org.testcontainers.junit.jupiter.TestcontainersExtension.findSharedContainers(TestcontainersExtension.java:210)
at org.testcontainers.junit.jupiter.TestcontainersExtension.beforeAll(TestcontainersExtension.java:55)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)
Caused by: java.lang.ClassNotFoundException: org.testcontainers.shaded.org.apache.commons.lang3.StringUtils
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)Additional Information
No response
Reacted by Madalin Giurca and omernaci
Activity
eddumelendez commentedon Nov 25, 2025
Hi, I have executed the test locally and also this example with no issues at all. Can you check your dependencies? Maybe there is a mixup of 1.x and 2.x on your classpath. You can run
mvn dependency:treeor./gradlew dependencies.farcasalin commentedon Nov 26, 2025
This package doesn't have the 2.x version on maven central: https://mvnrepository.com/artifact/org.testcontainers/oracle-free
I am using this in my project.
eddumelendez commentedon Nov 26, 2025
See https://mvnrepository.com/artifact/org.testcontainers/testcontainers-oracle-free. See release notes for version 2.0.0