当两个条件中的任何一个发生时,我需要跳过执行。
如下所示:
mvn clean test -DconditionA=false -DconditionB=false这是我的pom示例:
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.6.0</version>
<executions>
<execution>
<id>list-dir</id>
<phase>validate</phase>
<goals>
<goal>exec</goal>
</goals>
<configuration>
<executable>ls</executable>
<workingDirectory>.</workingDirectory>
<arguments>
<argument>-ls</argument>
</arguments>
<skip>${conditionA}</skip>
<skip>${conditionB}</skip>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>我想要的是无论conditionA或conditionB是否为真,都能够跳过此执行。第二次跳过会覆盖第一次跳过。
有什么方法可以做到这一点吗?
发布于 2020-10-01 20:44:45
当conditionB设置为true时,可以使用配置文件覆盖conditionA:
<profiles>
<profile>
<activation>
<property>
<name>conditionB</name>
<value>true</value>
</property>
</activation>
<property>
<conditionA>true</conditionA>
</property>
</profile>
</profiles>这将适用于:
mvn clean test -DconditionA=true或者:
mvn clean test -DconditionB=true它可能不适用于以下情况:
mvn clean test -DconditionA=false -DconditionB=true我还没试过呢。如果没有,您实际上需要它,您将需要为设置它的A和B添加另一个属性和配置文件。
https://stackoverflow.com/questions/51371084
复制相似问题