3

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

4

3 回答 3

2

执行此操作的正确方法如下:

  • 确保安装m2em2eclipse(取决于您的 Eclipse 版本):http: //www.eclipse.org/m2e/
  • 仅使用 POM 文件中的依赖项部分,不要摆弄 Eclipse 项目引用。右键单击项目,然后选择Maven > Update Project Configuration将项目重置为 Maven 默认设置。这样,m2e就拥有依赖项的所有权。
  • 如果您没有该选项,您可能需要启用项目以供 Maven 使用。右键单击项目,然后Maven > Enable Workspace ResolutionMaven > Enable Dependency Management
  • 确保所有引用的项目都在 Eclipse 中打开并启用了 Maven特性
  • 检查每个项目的 Maven 设置,确保groupIdartifactIdversion与您在 Eclipse 中打开的项目匹配。因此,如果您依赖的项目在 Eclipse 中具有1.0.0-SNAPSHOT版本,请确保依赖项目的 POM 文件在依赖项部分引用了1.0.0-SNAPSHOT版本。
  • 为每个项目启用工作区分辨率。右键单击项目,然后Maven > Enable Workspace Resolution
  • 最后,如果项目仍然没有解决,再次右键单击项目,然后Maven > Update Dependencies

这应该可以解决您的问题。

于 2012-06-28T10:54:02.010 回答
2

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

于 2013-05-13T11:03:08.720 回答
1

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

于 2017-09-25T20:19:13.897 回答