java - 为什么 Eclipse Maven 说相同版本的依赖项有冲突?

标签 java eclipse maven m2eclipse

当我在我的依赖关系树中多次列出一个依赖关系时,即使该依赖关系的所有版本都相同,Eclipse 也会说(在 POM 的“依赖关系层次结构”选项卡中)除了一个是“(省略了与 X.X.X 冲突)”。组 ID、 Artifact ID 和版本都将相同。

这是一个随机选择依赖项的简单示例。注意 maven-model 和 maven-artifact。

maven-core dependency conflict same versions

我正在使用 Eclipse Mars (4.5.0)

除了 UI 中的误导性消息之外,这似乎对任何事情都没有任何影响。到处都看到“因冲突而被遗漏……”真是令人讨厌,尤其是当我想看到真正的冲突时。

最佳答案

Eclipse 的“依赖层次结构”选项卡由 M2Eclipse 插件填充。而且,不幸的是,这似乎是在 M2Eclipse 插件中硬编码的 source code .无论省略依赖项的原因是什么(重复、版本冲突...),M2Eclipse 插件都会添加标签“因冲突而省略”。

请注意,tree 不是这种情况。 maven-dependency-plugin 的目标,此选项卡从中模仿输出。默认情况下,命令 mvn dependency:tree 不会显示省略的依赖项。如果verbose flag 设置为 true,则输出将显示因以下原因而省略的每个依赖项: 是另一个的副本;与他人的版本和/或范围冲突;并在依赖树中引入循环。

我找不到这方面的错误,因此您可以提交增强请求,through their Bugzilla , 要求插件更多地遵守 dependency:tree 的输出(例如显示省略依赖项的真正原因,而不是当前默认值)并添加一个选项以在详细和详细之间切换不是详细模式。

关于java - 为什么 Eclipse Maven 说相同版本的依赖项有冲突?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32976795/

相关文章:

java - 如何在 jQuery ajax 调用中接受 Spring MVC Controller 中的 JavaScript 数组参数?

java - 在 Eclipse 中使用 Ant 时出现错误运行 javac.exe 编译器消息

java - 如何在 Maven 项目(编译、构建、打包)中包含第 3 方 jar,其中添加本地 Maven 存储库不是一个选项?

java - 我在哪里可以存储此属性以供 Maven 和 Java 使用?

java - 应用程序在 ubuntu 中表现奇怪,但在 windows 中工作正常

java - 使用多线程读取30GB文件

java - AsyncTask onPostExecute 错误中的新 Intent

java - 如何在 Eclipse 中用新内容替换搜索到的行?

android - 如何在 Eclipse 中正确安装 mysql 连接器?

maven - 在 Google Cloud SQL 环境中执行 maven 单元测试