我有一个项目,它有两个依赖项,它们都对不同版本的番石榴具有三级依赖项;14.0.1 和 18
14.0.1 按提供的方式提供,我在我的 uber jar 中捆绑了版本 18 并将其隐藏以将有问题的包重新定位com.google.common.collect
到shaded.com.google.common.collect
,并通过以下方式验证了这一点jar -tf
这就是我对着色 jar 的理解变得模糊的地方 - 我的两个需要 Guava 的依赖 jar 应该如何知道在标准和着色的包之外使用哪个包?
我正在使用 gradle 通过com.github.jengelman.gradle.plugins:shadow:1.2.3
插件构建我的项目。