我有一个Maven(3.0.4)项目,其中处理一些外部资源,并使用配置文件中定义的一些属性过滤它们.
当我启动程序集插件(手动或挂钩到某个阶段)时,似乎maven-resource-plugin不会将命令行指定的配置文件视为活动状态.以这种方式,不替换与指定配置文件中定义的属性相关的令牌.
如果我定义一个配置文件activeByDefault,即使命令行指定了另一个,它也被认为是活动的…
这是一个例子:
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>2.5</version>
<executions>
<execution>
<id>copy-script</id>
<phase>process-resources</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>${basedir}/target</outputDirectory>
<resources>
<resource>
<directory>${basedir}/src/main/bash</directory>
<filtering>true</filtering>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
...
<profiles>
<profile>
<id>staging</id>
<properties>
<remote.url>some_stag_value</remote.url>
</properties>
</profile>
<profile>
<id>prod</id>
<properties>
<remote.url>some_prod_value</remote.url>
</properties>
</profile>
</profiles>
最佳答案 尝试使用!停用配置文件:
mvn groupId:artifactId:goal -P profile_you_want !default_profile