我有这个结构
**** child C
家长 (A)
**** child B
如果我尝试在没有父级的情况下安装子级 B,maven 会抛出一个错误,我知道按照惯例我应该将父级安装在我的存储库中,但是有没有办法让某人拉取子级并在安装过程中安装自动父辈?
@编辑
我要尽量说得更清楚,我有一个项目 B 依赖于项目 A(项目 A 是父项目,与项目 B 相同)我希望能够在项目 B 中构建,而不需要 A 的存在我的“本地”(m2>存储库)存储库,我想通过某种方式,从B也安装A,这样对B进行操作的开发人员就不必在之前手动安装A
长话短说:不。(至少不是直接的。)
您不能从另一个项目运行一个项目的构建(但是从聚合器/多模块 https://maven.apache.org/pom.html#Aggregation项目或与Maven 调用程序插件 https://maven.apache.org/plugins/maven-invoker-plugin/或者 Groovy 或 Ant 脚本等。但当您在您的情况下执行后者之一时,依赖项解析已经完成,并且会失败。)
你也可以反过来做,比如:
+- aggregator
+- pom.xml: <packaging>pom, <module>parent (A), <module>child B
|
+- parent (A)
| +- pom.xml
|
+- child B
| +- pom.xml: <parent>parent (A), <relativePath>../parent (A), <dependency>parent (A)
|
+- child C
+- pom.xml: <parent>parent (A), <relativePath>../parent (A)
建筑aggregator
builds parent (A)
and child B
按照这个顺序,因为 Maven Reactor 识别出以下的依赖关系:child B
on parent (A)
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)