关于我是否可以为Maven Surfire插件动态更改Include
和Exclude
,请告诉我吗?
例如:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.18.1</version>
<configuration>
<includes>
<include>**/${param}Spec*.*</include>
</includes>
</configuration>
</plugin>
</plugins>
</build>
我希望在执行Maven测试命令时从命令行传递$param
。
如果您有解决方案,请提供建议。我尝试过argline
和systemProperties
谢谢!
答案 0 :(得分:0)
我认为没有办法传递动态参数,但如果排除/包含的组合有限,则可以使用以下技巧。 Trick正在使用具有不同组合的配置文件,如combo1,combo2等。然后,您可以使用特定的配置文件运行maven build&amp;只有那些包含/排除才有效。
Command = mvn clean package -P combo1
的pom.xml
<profiles>
<profile>
<id>combo1</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.18.1</version>
<configuration>
<includes>
<include>**/Combo1Spec*.*</include>
</includes>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>combo2</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.18.1</version>
<configuration>
<includes>
<include>**/Combo2Spec*.*</include>
</includes>
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>