Maven eclipse - 多项目依赖关系没有出现

时间:2013-02-18 03:09:45

标签: eclipse maven m2eclipse

我有一堆maven项目,它们都是父项目的一部分。当我将父项目导入eclipse时,我期望子项目源文件夹列在我的父项目中,但它们不是。它们也没有出现在“Maven Dependencies”部分中。

这是正确的行为还是我错过了什么。如果这是正确的行为,那么围绕这样做的最佳做法是什么?

我应该将每个项目导入eclipse,然后编辑我的父项目的构建路径以将它们全部包含在内吗?我真的不喜欢这种方法,因为我想通过maven做一切。

注意:我没有使用mvn eclipse:eclipse来生成我的项目文件,我在eclipse IDE中直接使用maven插件:导入现有的maven项目

谢谢!

2 个答案:

答案 0 :(得分:1)

导入您的父项目然后关闭它(右键单击包浏览器中的项目> close project)。选择它并转到file > import > maven > existing maven projets,您应该看到子项目列表,然后选择所需项目finish

现在,在您的软件包资源管理器中,您应该:

  • 项目parent-project,您在pom-parent处理,最终在src-parent

  • 上工作
  • 每个child-project的一个项目,您处理相应的pom-childsrc-child

如果缺少某些依赖项,请尝试更新项目(右键单击包资源管理器maven > update project中的项目)

通常你不必在eclipse中编辑构建路径,它必须由项目的maven性质来处理(maven性质通常由项目图标上的M代表)

答案 1 :(得分:0)

通常,如果您不导入“依赖项”项目,Eclipse只会使用您本地仓库中的jar文件(.m2)。

但是,我不明白你的意思是“我有一堆maven项目,它们都是父项目的一部分”。

项目不是彼此的一部分。并且子项目源不应该列在sources文件夹中。您只使用字节码。

如果您想“查看所有来源”: 但是,如果将源导出为源jar,则可以完整地查看代码。

如果您希望能够跨项目进行调试: 然后,您必须在Eclipse中导入所有项目。如果项目已关闭,Eclipse将使用jar,就像项目不存在一样。如果项目是开放的,它将使用项目(不确定如何,但它运作顺利)。