Maven 在组装期间合并父pom和子pom
我有一个多模块maven项目。我想组装每个子对象,以便在使用maven解压和执行它们时不依赖于父pom 汇编插件有没有一种方法可以“合并”父pom和子pom 原始项目:Maven 在组装期间合并父pom和子pom,maven,maven-assembly-plugin,Maven,Maven Assembly Plugin,我有一个多模块maven项目。我想组装每个子对象,以便在使用maven解压和执行它们时不依赖于父pom 汇编插件有没有一种方法可以“合并”父pom和子pom 原始项目: ├── pom.xml ├── README.md ├── module1 │ ├── assembly.xml │ ├── pom.xml │ ├── README.md │ └── src └── module2 ├── assembly.xml ├── pom.xml ├── REA
├── pom.xml
├── README.md
├── module1
│ ├── assembly.xml
│ ├── pom.xml
│ ├── README.md
│ └── src
└── module2
├── assembly.xml
├── pom.xml
├── README.md
└── src
组装包(zip):
然后在my assembly.xml上,我只需添加生成的.flatted pom.xml
,并将其重命名为pom.xml:
<files>
<file>
<source>.flattened-pom.xml</source>
<destName>pom.xml</destName>
</file>
</files>
.platten-pom.xml
pom.xml
我想你想要像
它允许您将父POM“合并”到POM中 使您的
moduleX
成为多模块构建的一部分(在目录中添加moduleX
,然后尝试在父级pom.xml
中添加moduleX
);将您想在moduleX
中打包的所有模块定义为moduleX
的依赖项,然后通过maven assembly插件创建zip/tar.gz等…我不理解。组装每个子模块…
?模块已创建为jar
或war
,具体取决于您提供的打包方式?所有模块必须单独打包为压缩文件,彼此独立。每个压缩包的结构如上面所述。解压后,客户端只需执行mvn测试
。什么类型的压缩文件?嗯..我不明白步骤。客户端只需要做mvn测试
?您是创建库还是测试库?然后有人可以直接使用jar
,而不需要进行补充压缩/压缩文件?真的很困惑你到底有什么问题?它们不是罐子。这些模块由使用maven执行的脚本组成。组装模块后,我们将其共享给客户机。您知道是否可以不展开变量吗?我通过使用keep
选项找到了它。
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>flatten-maven-plugin</artifactId>
<version>1.2.1</version>
<executions>
<execution>
<id>flatten</id>
<phase>prepare-package</phase>
<goals>
<goal>flatten</goal>
</goals>
<configuration>
<flattenMode>bom</flattenMode>
<pomElements>
<build>keep</build>
</pomElements>
</configuration>
</execution>
</executions>
</plugin>
<files>
<file>
<source>.flattened-pom.xml</source>
<destName>pom.xml</destName>
</file>
</files>