java如何跟踪eclipse中编译错误的错误?
我有一个maven java项目,它在命令行中编译得很好,但当我在eclipse中导入时,我收到有关CollectionUtils的编译错误
org.apache.commons.collections.CollectionUtils
似乎该项目具有可传递的依赖项,该依赖项引用了apache commons集合的旧版本。 如何准确跟踪错误? 如何修复? 谢谢
你可以在下面搜索框中键入要查询的问题!
我有一个maven java项目,它在命令行中编译得很好,但当我在eclipse中导入时,我收到有关CollectionUtils的编译错误
org.apache.commons.collections.CollectionUtils
似乎该项目具有可传递的依赖项,该依赖项引用了apache commons集合的旧版本。 如何准确跟踪错误? 如何修复? 谢谢
# 1 楼答案
在我看来,Eclipse中的类路径(
.classpath
文件)配置不正确。您可以让maven使用Maven Eclipse Plugin来为您配置这一点。只需从命令行执行以下操作:然后,Maven将用POM中定义的所有依赖项(包括可传递依赖项)正确地填充
.classpath
文件。然后在Eclipse中刷新项目,所有的红色十字应该消失(希望…)# 2 楼答案
也许您可以通过发出
mvn dependency:tree
来追踪可传递的依赖项,以确定pom中的哪个依赖项正在使用较旧版本的Apache commons或者,打开pom时在eclipse内部。xml文件(安装了m2e插件)您应该可以在编辑器底部看到依赖树选项卡,如下所示:
在搜索字段中,您可以键入apache commons jar的名称,以找出哪个依赖项将其引入。一旦你有了这一点,添加适当的排除添加应该是完美的
问题
您是如何在eclipse中导入maven项目的。你做了一个
mvn eclipse:eclipse
然后把它作为一个普通的eclipse项目导入了吗?如果是这样,我建议安装m2e插件(链接在上面),然后使用Import Existing Maven Project
从eclipse中导入maven项目# 3 楼答案
调用
它将为您提供错误跟踪,帮助您修复此错误