chi*_*ity 10 java maven maven-shade-plugin
我有一个包含两个依赖项A和B的Maven项目.每一种过渡地依赖于Ç,但它们依赖于不同版本的Ç.假设A取决于C版本1,B取决于C版本2.
不幸的是,一个不是字节码兼容版本2,也不是乙与第1版(碰巧,一个是源兼容与2版本,但我不认为这将有助于我们在这里.)
这意味着我在项目中需要两个版本的传递依赖项,我需要A使用版本1,B需要使用版本2.
有办法做到这一点吗?
我曾假设我需要使用shade插件来重新定位A的包名及其所有依赖项,但这似乎不可能.如果我遮蔽A,它的依赖关系不会被遮挡,它仍然会选择版本2,并且无法运行.
创建另一个A名为 的项目包装器A-wrapper。搬迁C至A-wrapper. 然后在您的主项目中,取决于A-wrapper和B。
我在 pb2 和 pb3 上遇到了类似的问题,并使用这种方式解决了。 /sf/answers/2897596761/
| 归档时间: |
|
| 查看次数: |
835 次 |
| 最近记录: |