我在 Eclipse 的工作区中打开了多个相关项目。其中一个项目对另一个项目的输出 jar 具有 Maven 依赖关系。在这个项目中,对依赖项中类的任何引用总是显示为红色(未识别),并且我没有看到代码完成或 javadoc 显示它们。如果我手动将 jar 添加到类路径,那么我不再有这个问题。问题是,我不想在每次修订更改时都手动添加 jar,这就是 Maven 的用途。关于如何解决这个问题的任何想法?这对我来说似乎是一个错误,但我不确定......
问问题
7751 次
3 回答
2
执行此操作的正确方法如下:
- 确保安装
m2e
或m2eclipse
(取决于您的 Eclipse 版本):http: //www.eclipse.org/m2e/ - 仅使用 POM 文件中的依赖项部分,不要摆弄 Eclipse 项目引用。右键单击项目,然后选择Maven > Update Project Configuration将项目重置为 Maven 默认设置。这样,m2e就拥有依赖项的所有权。
- 如果您没有该选项,您可能需要启用项目以供 Maven 使用。右键单击项目,然后Maven > Enable Workspace Resolution或Maven > Enable Dependency Management。
- 确保所有引用的项目都在 Eclipse 中打开并启用了 Maven特性。
- 检查每个项目的 Maven 设置,确保groupId、artifactId和version与您在 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 回答