在Eclipse m2e中,如何引用工作区项目?
如何使用Eclipse m2e引用另一个工作区项目?
我是否必须在项目设置中添加项目依赖项? 但在这种情况下,依赖关系不会显示在pom中。
如果我在pom中设置它们,它将不会在工作空间中引用项目,而是引用本地存储库中的jar。 很烦人,有人可以帮忙吗?
正确的方法如下:
- 仅使用POM文件中的dependencies部分,不要使用Eclipse项目引用。 右键单击该项目,然后选择Maven>更新项目配置以将项目重置为Maven默认设置。 这样, m2e拥有依赖项的所有权。
- 确保所有引用的项目都在Eclipse中打开并启用了Maven 特性 。
- 检查每个项目的Maven设置,确保groupId , artifactId和version与您在Eclipse中打开的项目匹配。 因此,如果您所依赖的项目在Eclipse中具有版本1.0.0-SNAPSHOT ,请确保依赖项目的POM文件引用依赖项部分中的版本1.0.0-SNAPSHOT 。
- 为每个项目启用工作空间分辨率 。 右键单击项目,然后单击Maven>启用工作空间分辨率 。
- 最后,如果项目仍未解决,请再次右键单击该项目,然后单击Maven> Update Project
这应该可以解决您的问题。 如果在此之后仍然从文件系统引用了依赖项,请再次检查groupId , artifactId以及每个依赖项的版本 。
还要检查项目中是否有任何错误 – 尝试运行Maven安装。
我会走得更远。 如果你曾经在你的项目中运行过mvn eclipse:eclipse
,那么你可能遇到了麻烦。 我的情况是,我的eclipse项目中有一个“ Referenced Libraries ”部分和一个“ Maven Dependencies ”部分,库版本相互冲突,导致eclipse和我不可避免的混淆。
我发现最安全的事情是运行mvn eclipse:clean
从命令行mvn eclipse:clean
然后返回到eclipse,刷新项目,“OK”生成的问题对话框,然后转到Maven> Update Project 。 这为我排序了全部。
当eclipse与导入和删除多个项目混乱时,您可能需要重建maven存储库的索引。 这是我做过的一种方式。
-
检查引用的项目是否被eclipse正确识别为maven项目。
在菜单栏中,单击
Window -> Show View -> Other...
弹出“显示视图”窗口时,选择Maven -> Maven Repositories
在Maven Repositories窗口中,您应该在Local Repositories -> Workspace Projects
中将项目视为jar文件
如果在Workspace Projects
找不到Workspace Projects
,请右键单击Workspace Projects
并选择Rebuild Index
。 -
更新引用项目的maven
右键单击引用项目,
Maven -> Update Project... -> OK
您还需要确保运行正确的目标。
如果您没有运行安装目标,那么它将不会被复制到您的存储库,也不会编译。
要了解有关目标的更多信息,请访问https://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html