【问题标题】:Maven dependency issue in eclipseeclipse中的Maven依赖问题
【发布时间】:2012-06-27 13:53:44
【问题描述】:

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

【问题讨论】:

  • 配置了Eclipse的工作区分辨率?

标签: eclipse maven dependencies


【解决方案1】:

正确的做法如下:

  • 确保已安装 m2e 或 m2eclipse(取决于您的 Eclipse 版本):http://www.eclipse.org/m2e/
  • 仅使用 POM 文件中的依赖项部分,不要摆弄 Eclipse 项目引用。右键单击项目,然后选择 Maven > 更新项目配置 将项目重置为 Maven 默认设置。这样,m2e 拥有依赖项的所有权。
  • 如果您没有该选项,您可能需要启用项目以供 Maven 使用。右键单击项目,然后 Maven > 启用工作区解析 或 Maven > 启用依赖管理。
  • 确保所有引用的项目都在 Eclipse 中打开并启用了 Maven nature。
  • 检查每个项目的 Maven 设置,确保 groupId、artifactId 和 version 与您在 Eclipse 中打开的项目匹配。因此,如果您依赖的项目在 Eclipse 中具有版本 1.0.0-SNAPSHOT,请确保依赖项目的 POM 文件在 中引用版本 1.0.0-SNAPSHOT >依赖项部分。
  • 为每个项目启用 Workspace Resolution。右键单击项目,然后 Maven > 启用工作区解析。
  • 最后,如果项目仍然没有解决,再次右键单击项目,然后Maven > 更新依赖项

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

【讨论】:

    【解决方案2】:

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

    【讨论】:

      【解决方案3】:

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-01-12
        • 2020-10-21
        • 1970-01-01
        • 2016-06-14
        • 2011-12-21
        • 2014-04-24
        • 1970-01-01
        相关资源
        最近更新 更多