gpt4 book ai didi

maven - 如何为插件的不同执行提供不同的属性集?

转载 作者:行者123 更新时间:2023-12-04 08:20:23 27 4
gpt4 key购买 nike

我正在使用 maven-assembly-plugin组装不同的 Artifact 如下:

<build>
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<appendAssemblyId>false</appendAssemblyId>
<descriptors>
<descriptor>src/main/assembly/assembly.xml</descriptor>
</descriptors>
</configuration>
<executions>
<execution>
<id>configuration-staging</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
<execution>
<id>configuration-production</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>

assembly.xml ,我启用了模板过滤:
<fileSets>
<fileSet>
<filtered>true</filtered>

这很好用。例如,如果我输入 ${name}在要组装的资源之一中,这将替换为项目名称。我也可以在 pom.xml 中定义属性,它将被插件替换。

现在,我想为 maven-assembly-plugin 的每次执行设置不同的属性。 .比如我想介绍一个 ${url}它包含要在目标环境中使用的 URL(上例中的 stagingproduction)。

这可能吗?如何?

最佳答案

显然,可以为 maven-assembly-plugin 中的每个执行传递不同的属性。如下:

<build>
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<appendAssemblyId>false</appendAssemblyId>
<descriptors>
<descriptor>src/main/assembly/assembly.xml</descriptor>
</descriptors>
</configuration>
<executions>
<execution>
<id>configuration-staging</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<finalName>staging</finalName>
<filters>
<filter>src/main/assembly/staging.properties</filter>
</filters>
</configuration>
</execution>
<execution>
<id>configuration-production</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<finalName>production</finalName>
<filters>
<filter>src/main/assembly/production.properties</filter>
</filters>
</configuration>
</execution>
</executions>
</plugin>

虽然这不能回答一般性问题,但它回答了专门针对 maven-assembly-plugin 的问题。 .

更多信息请访问 https://maven.apache.org/plugins/maven-assembly-plugin/examples/single/filtering-some-distribution-files.html .

关于maven - 如何为插件的不同执行提供不同的属性集?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52478263/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com