Skip to content

Commit

Permalink
Update docs to clarify shading approach (#3974)
Browse files Browse the repository at this point in the history
Make the docs section about our shading approach and motivation more up-to-date and less confusing (no JAX-RS/Jersey anymore, mention docker-java-api, etc)
  • Loading branch information
bsideup committed Apr 11, 2021
1 parent f3ffed6 commit 3c70d08
Showing 1 changed file with 3 additions and 2 deletions.
5 changes: 3 additions & 2 deletions docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -86,8 +86,9 @@ testImplementation('org.testcontainers:mysql') //no version specified
[JitPack](jitpack_dependencies.md) builds are available for pre-release versions.

!!! warning "Shaded dependencies"
Testcontainers uses the docker-java client library, which in turn depends on JAX-RS, Jersey and Jackson libraries.
These libraries in particular seem to be especially prone to conflicts with test code/application under test code.
Testcontainers depends on other libraries (like docker-java) for it to work.
Some of them (JUnit, docker-java-{api,transport} and its transitive dependencies, JNA, visible-assertions and others) are part of our public API.
But there are also "private", implementation detail dependencies (e.g. docker-java-core, Guava, OkHttp, etc etc) that are not exposed to public API but prone to conflicts with test code/application under test code.
As such, **these libraries are 'shaded' into the core testcontainers JAR** and relocated under `org.testcontainers.shaded` to prevent class conflicts.

## Sponsors
Expand Down

0 comments on commit 3c70d08

Please sign in to comment.