【问题标题】:How to use ommited library in java project如何在java项目中使用省略库
【发布时间】:2020-05-05 06:23:01
【问题描述】:

我的项目中有两个库作为依赖项。这两个库中的每一个都有一堆库作为依赖项。但是,有两个具有不同版本的同名库,正如我在 maven pom 依赖层次结构中看到的那样,其中一个库与同名库冲突。当我运行程序程序时,它使用两个“父”库的元素,但它使用冲突的“子”库之一,它试图与应该使用其他冲突库的“父”库一起使用。那么项目中是否有可能同时使用两个冲突的库。

谢谢

【问题讨论】:

  • maven.apache.org/guides/introduction/… 阅读如何排除依赖项
  • 也许我的问题不清楚,我不会排除任何东西,我不会同时使用!
  • 我提出的建议是,您排除其中一个库的冲突依赖项,以便它使用类路径上的非冲突依赖项。
  • 它们不会以导致编译问题的方式发生冲突,当我查看 pom 的依赖层次结构时它们会发生冲突。

标签: java maven dependencies


【解决方案1】:

不是真的。

您可以使用 Maven shade 插件来构造一个 shaded jar,其中包含具有不同包层次结构的依赖项。

但通常的解决方案是尝试找到可与所有其他内容一起使用的库版本(我知道,这并不总是可能的)。

【讨论】:

    猜你喜欢
    • 2021-11-15
    • 2020-04-06
    • 1970-01-01
    • 2012-11-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多