Maven可以自动构建一个未找到的依赖项吗?

时间:2012-12-05 19:33:37

标签: maven dependencies

我正在处理三个独立的项目(A,B和C)。

项目B和C依赖于项目A生成的jar。

如果找不到依赖项,Maven是否能够自动构建项目A?

我到目前为止找到的答案表明制作了其他2个项目模块(我认为这意味着存储库布局并将它们合并到项目A中)并创建父/子pom。

一个简单的“不”也是我的结论之一。

好像我在B和C中制作了项目A的模块,maven并不是那么喜欢。 Maven可以在构建期间看到超出当前项目范围的项目吗?对不起,如果那有点罗嗦。

1 个答案:

答案 0 :(得分:1)

如果A,B和C是公共容器项目的模块,则该方案可以正常工作。

从root pom.xml:

<modules>
 <module>project-a</module>
 <module>project-b</module>
 <module>project-c</module>
</modules>

其中“project-a”等是父文件夹中maven项目文件夹的名称。

父项目必须<packaging>pom</packaging>才能生效。

然后你可以构建父项目,它将按顺序构建所有子项,或者你可以使用一个高级Maven反应器标志。

e.g。 mvn clean install -pl project-b只会构建项目B.

有关详情,请执行mvn --help并阅读Maven By Example图书中的the multi modules chapter


但对于这个问题:

  

Maven是否有能力自动构建项目A.   找不到依赖?

......答案总是没有。如果找不到依赖项,Maven会失败,但它永远不会决定要构建哪些项目。您负责哪些项目需要建设。