【问题标题】:How to resolve the dependencies in the java project which is imported through maven in eclipse?如何解决eclipse中通过maven导入的java项目中的依赖关系?
【发布时间】:2012-06-06 09:44:16
【问题描述】:

我通过maven在eclipse中导入了多个项目。在eclipse中导入项目后,我看到项目资源管理器中的项目文件夹有一些错误。所有这些错误都在 pom.xml 上。

当我打开 pom.xml 时,错误是这样的:

Project build error: Non-resolvable parent POM: Failure to find org.openhie.openempi:openempi:pom:2.2.5 in http://repo1.maven.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced and 'parent.relativePath' points at wrong local POM

如何解决eclipse中的这个错误?我通过添加错误消息中指定的缺失 JAR 尝试了很多,但错误仍然在 pom.xml 上突出显示。

请给我建议。

谢谢

【问题讨论】:

    标签: java eclipse maven pom.xml


    【解决方案1】:

    通过 Eclipse 市场安装 http://www.eclipse.org/m2e/。该插件添加了一个

    classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER"

    eclipse 的 .classpath 文件中的条目和来自 maven 依赖项的每个 jar 都将在您的类路径中。

    【讨论】:

    • 安装后我应该如何使用m2e导入?是在maven导入的时候默认使用的吗?
    • 两种可能:导入“现有的maven项目”或者如果项目已经在您的工作区中,使用右键单击项目和“配置”->“转换为Maven项目”
    • 在eclipse中安装m2e后,我观察到在classpath变量中,有一个名为M2_REPO的变量指向C:/Users/admin/.m2/repository。但是你说它应该指向 org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER。我也没有在配置下看到“转换为 Maven 项目”选项。所以我再次从 scrtach 导入它,我再次看到我之前谈到的相同项目的错误。
    • - 从您的工作区中删除项目(删除)- 删除 .settings 目录、.project 和 .classpath 文件 - 通过“导入”->“现有 Maven 项目”重新导入 如果你不这样做有这个菜单项 m2e eclipse 插件安装不正确。
    • 我从 eclipse 市场安装,我看到 2 个 maven 软件,我都安装了。
    【解决方案2】:

    你有一个 maven 插件可以做到这一点。您必须使用 Maven 项目根目录下的命令行并键入

    mvn eclipse:eclipse
    

    它将创建(或更新)一个 eclipse 项目,该项目依赖于位于本地 maven 存储库中的 jar,以及同一存储库中的 eclipse 项目工件(.project、.classpath 和其他内容)。

    然后使用“导入现有项目”向导在 Eclipse 中导入您的项目。

    http://maven.apache.org/guides/mini/guide-ide-eclipse.html了解更多信息

    【讨论】:

    • @Samuel:我需要在命令提示符下还是在 Eclipse 中使用这个命令?如果在 Eclipse 中,我应该怎么做?
    • 我的回答有点短,我添加了有关此工具的更多详细信息。
    • mvn eclipse:eclipse 是老派。使用 m2e,如另一个答案中所建议的那样,对 maven pom 的更改将始终反映在您的 eclipse 项目中。
    • @SeanPatrickFloyd 我上次使用它时有很多错误,但确实是 4 年前。它现在工作了吗?...而且我很老;=)
    • @SamuelRossille 是的,它曾经非常有问题,但是当它被称为 m2eclipse 时又回来了。至少两年以来非常稳定,现在是一个集成一流的核心eclipse项目
    猜你喜欢
    • 2022-10-04
    • 2021-08-24
    • 1970-01-01
    • 2014-09-05
    • 2019-12-14
    • 2017-06-25
    • 1970-01-01
    • 2019-11-17
    • 1970-01-01
    相关资源
    最近更新 更多