Relocate Third-Party Library in JDBC Jar
Details
| Detail name | Value |
|---|---|
| Changelog Number | 19314 |
| Type | Improvement |
| Status | Resolved |
| Fix Versions | JDBC 24.0.0 |
| Resolution Date | 2024-03-11 |
Background
Previously, when the JDBC Jar contained a third-party library like BouncyCastle within a fat jar, it led to potential conflicts. This occurred when using the JDBC driver in a project that also included BouncyCastle but in a different version. The presence of the same classes on the classpath in two distinct (and potentially incompatible) versions caused problems.
Improvement
Third-party libraries are relocated within the JDBC Jar. This relocation involves moving BouncyCastle classes from their original package structure (e.g., org/bouncycastle) to a new location (e.g., third_party/org/bouncycastle) within the Jar.
This resolves the conflicts arising from the presence of multiple versions of BouncyCastle classes on the classpath, ensuring compatibility and stability when using the JDBC driver alongside other dependencies. Users can now incorporate the JDBC Jar into their projects without encountering version conflicts with BouncyCastle or similar third-party libraries.