在我的 maven 项目中,ant 插件生成多个 war 文件,我想将它们全部附加到同一个 Artifact 中。我试过这样的 build-helper-maven-plugin
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>1.7</version>
<executions>
<execution>
<id>attach-artifacts</id>
<phase>package</phase>
<goals>
<goal>attach-artifact</goal>
</goals>
<configuration>
<artifacts>
<artifact>
<file>${project.build.directory}/*.war</file>
<type>war</type>
</artifact>
</artifacts>
</configuration>
</execution>
</executions>
</plugin>
我不想单独指定每个 war 文件,因为 ant 插件是动态的。有没有办法做到这一点?
谢谢,
最佳答案
Build Helper 插件似乎不支持为单个 Artifact 提供通配符(顺便说一句,如果支持,它可能会使用包含/排除配置 used by Resources Plugin )。
我了解到,如果您选择使用 Maven,最好将您的构建调整为“Maven 方式”。
在这种情况下,您应该修改您的构建以不使用 ant war 插件,而是使用多模块构建,每个 war 文件都有一个单独的模块(子项目)。
或者,在过去,我已经通过 Maven Assembly plugin 完成了像您正在做的事情,其中所有 war 都在一个 tar/gz 文件中一起发送。然后将存档(包含每个 war )附加到构建中。
请注意,您应该更愿意让您的“网络应用程序”模块具有“pom”的 Artifact 类型。程序集插件会将文件附加到最终版本中。
有关更多信息,我发现 Sonatype 的在线书籍是一个很好的资源:
http://www.sonatype.com/Support/Books
关于maven - 如何通配符将多个文件附加到 Maven 中的 Artifact ?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11971996/