如何在一个pom.xml中运行两个gmaven脚本?
我想从maven运行两个脚本,其中一个取决于环境变量。我正在尝试这样的事情:如何在一个pom.xml中运行两个gmaven脚本?,maven,gmaven-plugin,Maven,Gmaven Plugin,我想从maven运行两个脚本,其中一个取决于环境变量。我正在尝试这样的事情: <build> <plugins> <plugin> <groupId>org.codehaus.groovy.maven</groupId> <artifactId>gmaven-plugin</artifactId> <version>1.0</version> <
<build>
<plugins>
<plugin>
<groupId>org.codehaus.groovy.maven</groupId>
<artifactId>gmaven-plugin</artifactId>
<version>1.0</version>
<executions>
<execution>
<phase>validate</phase>
<goals>
<goal>execute</goal>
</goals>
<configuration>
<source>
println "My script"
</source>
</configuration>
</execution>
</executions>
</plugin>
</build>
...
<profile>
<activation>
<property>
<name>env.MY_ENV_VAR</name>
<value>runStuff</value>
</property>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.groovy.maven</groupId>
<artifactId>gmaven-plugin</artifactId>
<version>1.0</version>
<executions>
<execution>
<phase>validate</phase>
<goals>
<goal>execute</goal>
</goals>
<configuration>
<source>
println "My conditional script"
</source>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
org.codehaus.groovy.maven
我是maven的新手,所以不太可能有一个简单的解决方案,但我没有看到它。我找到了答案。每次执行都必须有一个唯一的ID。如果不指定ID,则两者都将获得“默认值”。一旦我给了有条件的一个非默认ID,它们都会运行
<build>
<plugins>
<plugin>
...
<executions>
<execution>
<id>Unconditional-script</id>
...
</execution>
</executions>
</plugin>
</build>
...
<profile>
...
<build>
<plugins>
<plugin>
...
<executions>
<execution>
<id>Conditional-script</id>
...
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
...
无条件脚本
...
...
...
...
条件脚本
...