假设我有一个 Maven 项目,其 pom 中包含以下插件部分:
假设我有一个 Maven 项目,其 pom 中包含以下插件部分:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<appendAssemblyId>false</appendAssemblyId>
<formats>
<format>zip</format>
</formats>
</configuration>
<executions>
<execution>
<id>generate-scripts-package</id>
<goals>
<goal>single</goal>
</goals>
<phase>package</phase>
<configuration>
<descriptors>
<descriptor>src/main/assembly/script.xml</descriptor>
</descriptors>
</configuration>
</execution>
<execution>
<id>rest-runtime-scripts-secondary-package</id>
<phase>secondary-generate-resources</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<includes>
<include>computeClasspath.sh</include>
</includes>
<descriptors>
<descriptor>src/main/assembly/script.xml</descriptor>
</descriptors>
<outputDirectory>${project.build.directory}/tempscript</outputDirectory>
<formats>
<format>dir</format>
</formats>
<ignoreDirFormatExtensions>true</ignoreDirFormatExtensions>
<attach>false</attach>
</configuration>
</execution>
</executions>
</plugin>
如果我运行它 mvn package
,zip 文件会成功生成。但是,当我运行它时 mvn jar:jar jar:test-jar assembly:single
,执行失败并出现以下错误:
读取程序集时出错:未找到程序集描述符。
但是,如果我像这样指定执行 ID:, mvn jar:jar jar:test-jar assembly:single@generate-scripts-package
则会生成该执行的 zip。但是,我想要一种方法来生成所有 zip,而无需指定执行 ID。
我怎样才能做到这一点?
从父 pom mvn package
,因此我无法使用 mvn jar:jar jar:test-jar assembly:single
性能问题,也无法指定执行 id