1
我正在使用maven-release-plugin来释放一些工件。在release:perform
目标期间,我想运行一个内联的Groovy脚本,它使用我的SCM凭证来执行一些任务。如何将maven命令行参数传递给内联Groovy脚本
这是一个片段我pom.xml
...
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>2.4</version>
<configuration>
<goals>
clean
deploy
org.codehaus.gmaven:gmaven-plugin:execute
</goals>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.gmaven</groupId>
<artifactId>gmaven-plugin</artifactId>
<version>1.3</version>
<executions>
<execution>
<id>default-cli</id>
<goals>
<goal>execute</goal>
</goals>
<configuration>
<source>
log.info "Username: ${project.properties.username} account"
</source>
</configuration>
</execution>
</executions>
</plugin>
...
我调用Maven作为跟随
mvn -B release:prepare release:perform -Dusername=foo -Dpassword=bar
我GETE以下的输出:
Username: null account
我想看看在官方GMaven页面,但似乎有一些片段丢失...
有什么想法?
EDIT
我完成通过将凭证在goals
部
...
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>2.4</version>
<configuration>
<goals>
clean
deploy
org.codehaus.gmaven:gmaven-plugin:execute -Dusername=${username} -Dpassword=${password}
</goals>
</configuration>
</plugin>
...
的命令行是直到相同的: mvn -B release:prepare release:perform -Dusername=foo -Dpassword=bar
如所述通过@khmarbaise它看起来像Maven的发布周期rked。我不确定它是否将所有命令行参数传递给了分叉进程。所以这就像我迫使CLI参数的前进一样。
这个必须与你有的其他配置有关,因为当我使用与你所显示的相同的语法时,它适用于我。 – Renato 2013-02-10 15:38:08