2012-06-27 66 views
3

我在eclipse中的工作区中打开了多个相关项目。其中一个项目对另一个项目的输出jar具有maven依赖性。在这个项目中,任何对依赖关系中类的引用总是显示为红色(未识别),我没有得到代码完成或javadoc显示它们。如果我手动将jar添加到类路径中,那么我不再有这个问题。问题是,我不想每次修改版本时手动添加jar,这就是Maven的用处。关于如何解决这个问题的任何想法?这似乎是我的错误,但我不知道......eclipse中的Maven依赖关系问题

+0

配置Eclipse的工作区分辨率? – khmarbaise

回答

2

做到这一点,正确的方法是:

  • 确保m2em2eclipse(根据您的Eclipse版本)已安装:http://www.eclipse.org/m2e/
  • 专门在POM文件中使用依赖项部分,不要摆弄Eclipse项目引用。右键单击项目,然后选择Maven>更新项目配置将项目重置为Maven默认设置。这样,m2e拥有相关性的所有权。
  • 如果您没有该选项,则可能需要为Maven使用项目启用该项目。右键单击项目,然后Maven>启用工作空间分辨率Maven>启用依赖管理
  • 确保所有引用的项目在Eclipse中打开,并启用Maven 性质
  • 检查Maven设置每个项目,确保的groupId的artifactId匹配你在Eclipse开放的项目。因此,如果您依赖的项目在Eclipse中具有版本1.0.0-SNAPSHOT,请确保依赖项目的POM文件引用版本1.0.0-SNAPSHOT依赖项部分中。
  • 启用工作区分辨率为每个项目。右键单击该项目,然后Maven>启用工作空间分辨率
  • 最后,如果项目还没有解决,再次右键单击该项目,然后的Maven>更新相关

这应该解决您的问题。

2

我遇到了同样的问题,并通过右键单击项目并从上下文菜单中选择Maven - > Disable Workspace Resolution来解决问题。如上所述,我已经尝试从POM文件更新项目。

0

为了解决这个问题,通常你可以复制工作项目中的Eclipse.classpath文件,因为这里没有任何特定的项目,假设你是一个标准的Maven项目。这将告诉Eclipse允许Maven管理依赖和构建。 Eclipse用户界面似乎没有简单的方法。