Maven 反应堆多模块建造的包装?
我想我犯了一些错误,没有找到基本哲学问题的答案: 多模块maven项目反应堆建造模块的正确包装是什么 我使用的是Maven 反应堆多模块建造的包装?,maven,build,module,Maven,Build,Module,我想我犯了一些错误,没有找到基本哲学问题的答案: 多模块maven项目反应堆建造模块的正确包装是什么 我使用的是pom,但我觉得它不正确,因为pom工件没有人使用: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 htt
pom
,但我觉得它不正确,因为pom工件没有人使用:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.example.project</groupId>
<artifactId>reactor-build</artifactId>
<version>1.0.0-SNAPSHOT</version>
<packaging>pom</packaging>
<modules>
<module>../config</module>
<module>../module1</module>
<module>../module2</module>
</modules>
</project>
4.0.0
com.example.project
反应堆建造
1.0.0-SNAPSHOT
聚甲醛
../config
../module1
../module2
打包pom
是聚合器项目唯一允许的打包,也就是说,与您拥有的项目一样,也适用于父项目。发件人:
对于父项目和聚合(多模块)项目,打包
类型必须是pom
使用jar
(或保留默认值)时尝试使用不同包装的任何行为,例如以下行为:
[错误]“打包”的值为“jar”无效。聚合器项目需要“pom”作为包装。
pom包装正确。但是基于您在模块列表中使用的内容,如。/module1
等。表明您使用的结构可能是错误的…因为您的父目录结构不在目录结构的根目录下…这是一个仅限pom的项目,因此pom
打包看起来不错。无论如何,没有其他内置的包装类型更适合。@khmarbaise,“反应堆”项目不必是父母,所以我必须在我的回购中简单地生活在这样的“虚拟”工件中?@9ilsdx9rvj0lo是的。pom包装也意味着“不产生主要工件”。它们在这里帮助构建其他项目,或者让它们在父项目的情况下继承构建元素。但是POM在存储库中作为工件可用,并且可以用作父POM,例如。@9ilsdx9rvj0lo Maven意义上的项目实际上就是POM文件。虽然我们通常处理产生主要JAR WAR工件以及Maven POM文件的JAR或WAR项目,但聚合器项目只是POM文件。它还必须存储在存储库工件中,以便其他项目能够解决它。