maven - Maven可以自动构建找不到的依赖吗?

标签 maven dependencies

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

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

如果没有找到依赖,Maven是否有能力自动构建项目A?

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

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

似乎如果我在 B 和 C 中创建项目 A 的模块,maven 并不真正喜欢那样。 Maven 能否在构建期间看到当前项目范围之外的项目?抱歉,如果有点啰嗦。

最佳答案

如果 A、B 和 C 是公共(public)容器项目的模块,则该场景可以正常工作。

来自根 pom.xml:

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

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

父项目必须有<packaging>pom</packaging>为此。

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

例如mvn clean install -pl project-b只会构建项目 B。

有关更多信息,请执行mvn --help并阅读the multi modules chapter摘自《Maven By Examples》一书。


但是对于这个问题:

Does Maven have the ability to automatically build project A if the dependency is not found?

...答案始终是否定的。如果未找到依赖项,Maven 将失败,但它永远不会决定构建哪些项目。您负责哪些项目需要 build 。

关于maven - Maven可以自动构建找不到的依赖吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13731007/

相关文章:

unit-testing - 解决测试、testhelper 和被测项目之间的 Maven 循环依赖关系

java - Maven:如何将本地jar打包成最终jar?

java - 通过企业代理使用 Maven 3.3.9

asynchronous - 将 grunt 参数从一项任务传递到另一项任务

java - 我需要什么 Maven 依赖项才能获取 FileCredentialStore?

android - 实现ActionBarSherlock,gradle错误

c++ - 继承依赖项时如何防止重复包含.lib?

java - 如何解决线程 "main"java.lang.NoSuchFieldError : INSTANCE?中的异常

java - 如何在 maven 发布后自动更新 application.xml 中的版本

java - 如何在docker容器中运行的java maven项目中引用资源文件