m2Eclipse“;没有这样的文件或目录;子模块相互依赖时出错

m2Eclipse“;没有这样的文件或目录;子模块相互依赖时出错,eclipse,maven,m2eclipse,Eclipse,Maven,M2eclipse,我有一个多模块Maven项目,导入到Eclipse中 假设结构是: Parent | |--ChildA | |--ChildB 父母亲 | |--奇尔达 | |--ChildB 我遇到的问题是,如果ChildA与ChildB之间存在依赖关系(反之亦然),那么Eclipse中会显示“无此类文件或目录”错误(具有依赖关系的子pom的位置行1) 我们目前有两种“解决方案”,但都不是很令人满意: 忽略错误。这是可行的,但当您通常希望在problems视图中看到0个错误时,这很烦人 关闭项目的工作空间分

我有一个多模块Maven项目,导入到Eclipse中

假设结构是:

Parent | |--ChildA | |--ChildB 父母亲 | |--奇尔达 | |--ChildB 我遇到的问题是,如果ChildA与ChildB之间存在依赖关系(反之亦然),那么Eclipse中会显示“无此类文件或目录”错误(具有依赖关系的子pom的位置行1)

我们目前有两种“解决方案”,但都不是很令人满意:

  • 忽略错误。这是可行的,但当您通常希望在problems视图中看到0个错误时,这很烦人

  • 关闭项目的工作空间分辨率。同样,这是可行的,但是您会失去Eclipse的很多功能。例如,“查找工作区依赖项”并不能显示所有内容(重构时必不可少),如果您更改了模块,则必须在工作区返回到一致状态之前执行显式运行As->Maven Install and Update Projects

  • 我现在正在使用Eclipse Luna(m2eclipse 1.5.0),第一次注意到它是在Juno(m2eclipse 1.3.0.20121216-1819)中出现的,而不是在Helios(m2eclipse 1.3.0.20130129-0926)中出现的。使用Helios已经不再是一个选项,而是转移到Java 7上

    当然,命令行
    mvn clean install
    可以正常工作


    非常感谢您的帮助,因为目前这严重影响了我的工作效率。

    我相信我刚刚在本地项目上解决了这个问题。我可以通过运行

    mvn clean eclipse:clean
    

    然后在eclipse中重建。这似乎消除了所有潜在的配置问题。

    循环依赖听起来很糟糕。不管Maven做什么。你最好将这些部分重构到第三个模块中,以避免循环依赖。我不认为OP表示循环依赖,对吗?@user714965 OP没有循环依赖OP提到“从ChildA到ChildB的依赖关系(或反之亦然)”而不是“从ChildA到ChildB的依赖关系(或反之亦然)”。