在詹金斯(Jenkins)正在构建的项目中,我有几个“调用顶级Maven目标”构建步骤。
在“属性”字段中,您可以指定任意数量的Maven构建参数,例如
skipTests=true
计算为-DskipTests=true
但是,我想传递一个不能以-D开头并且也不需要等号的build参数。
像-Psomething
。
是否可以使用“调用顶级Maven目标”来执行此操作,还是需要通过“执行外壳”手动触发mvn构建?
谢谢!
答案 0 :(得分:0)
传递属性的一种解决方法是设置环境变量并读取它们。参见this SO post。
另一个解决方法是使用配置文件。基本上,在下面的示例中,您必须将环境变量RUNTESTS设置为true才能激活您的配置文件,并且可以在此配置文件中执行预期的任务(例如,有条件地运行junits)。
<profile>
<id>runtests</id>
<activation>
<property>
<name>env.RUNTESTS</name>
<value>true</value>
</property>
</activation>
<build>
<finalName>re</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>3.0.0-M1</version>
<configuration>
<executions>
<execution>
<id>default-test</id>
<phase>test</phase>
<goals>
<goal>test</goal>
</goals>
</execution>
</executions>
<forkCount>1</forkCount>
<reuseForks>false</reuseForks>
<testFailureIgnore>false</testFailureIgnore>
</configuration>
</plugin>
</plugins>
</build>
</profile>