有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何跟踪eclipse中编译错误的错误?

我有一个maven java项目,它在命令行中编译得很好,但当我在eclipse中导入时,我收到有关CollectionUtils的编译错误

org.apache.commons.collections.CollectionUtils

似乎该项目具有可传递的依赖项,该依赖项引用了apache commons集合的旧版本。 如何准确跟踪错误? 如何修复? 谢谢


共 (3) 个答案

  1. # 1 楼答案

    在我看来,Eclipse中的类路径(.classpath文件)配置不正确。您可以让maven使用Maven Eclipse Plugin来为您配置这一点。只需从命令行执行以下操作:

    mvn eclipse:eclipse
    

    然后,Maven将用POM中定义的所有依赖项(包括可传递依赖项)正确地填充.classpath文件。然后在Eclipse中刷新项目,所有的红色十字应该消失(希望…)

  2. # 2 楼答案

    也许您可以通过发出mvn dependency:tree来追踪可传递的依赖项,以确定pom中的哪个依赖项正在使用较旧版本的Apache commons

    或者,打开pom时在eclipse内部。xml文件(安装了m2e插件)您应该可以在编辑器底部看到依赖树选项卡,如下所示:

    enter image description here

    在搜索字段中,您可以键入apache commons jar的名称,以找出哪个依赖项将其引入。一旦你有了这一点,添加适当的排除添加应该是完美的

    问题

    您是如何在eclipse中导入maven项目的。你做了一个mvn eclipse:eclipse然后把它作为一个普通的eclipse项目导入了吗?如果是这样,我建议安装m2e插件(链接在上面),然后使用Import Existing Maven Project从eclipse中导入maven项目

  3. # 3 楼答案

    How to track exactly error? How to fix?

    调用

    mvn clean compile -e
    

    它将为您提供错误跟踪,帮助您修复此错误