全球MAVEN_OPTS似乎与Jenkins无关

时间:2013-04-26 23:13:11

标签: maven jenkins

我在CentOS上安装了Jenkins 1.512(信息如下),并将其配置为与 apache-maven-3.0.4 配合使用。

Linux server.masstermmind.com 2.6.32-358.2.1.el6.x86_64 #1 SMP Tue Mar 12 14:18:09 CDT 2013 x86_64 x86_64 x86_64 GNU/Linux

我实际上是在尝试解决Maven抱怨jbossHome文件中缺少pom.xml参数vaule的问题。所以,我决定通过在Jenkins -X中添加MAVEN_OPTS选项来调试Maven。但它抱怨我输入了一个不正确的Java参数:

The -X options are non-standard and subject to change without notice.

事实证明,Jenkins认为我为Java提出了一个论点。后来我发现Jenkins生成的命令如下:

  

/usr/java/jdk1.7.0_17/bin/java -X -cp / var / lib / jenkins / plugins / maven-plugin / WEB-INF / lib / maven3-agent- 1.2.jar:/usr/share/apache-maven-3.0.5/boot/plexus-classworlds-2.4.jar org.jvnet.hudson.maven3.agent.Maven3Main /usr/share/apache-maven-3.0.5 / var / cache / jenkins / war / WEB-INF / lib / remoting-2.23.jar /var/lib/jenkins/plugins/maven-plugin/WEB-INF/lib/maven3-interceptor-1.2.jar 35460

但是我在运行mvn时发现了它,它生成了以下Java行,并且正确地将“-X”放在最后。

  

/usr/java/jdk1.7.0_17/bin/java -cp /var/lib/jenkins/plugins/maven-plugin/WEB-INF/lib/maven3-agent-1.2.jar:/usr/share/ apache-maven-3.0.5 / boot / plexus-classworlds-2.4.jar org.jvnet.hudson.maven3.agent.Maven3Main /usr/share/apache-maven-3.0.5 / var / cache / jenkins / war / WEB -INF / lib / remoting-2.23.jar /var/lib/jenkins/plugins/maven-plugin/WEB-INF/lib/maven3-interceptor-1.2.jar -X

你能分享一下如何解决这个问题,或者这是一个詹金斯的错误吗?

1 个答案:

答案 0 :(得分:11)

AFAIU,将MAVEN_OPTS放在java command之后是詹金斯的正常行为。由于MAVEN_OPTS的目的是用户变量中的环境变量,以指定JVM属性。

我建议您将-X参数放在Jenkins Maven Job本身。在Build ---> Goals and options,您可以点击文本框末尾的question mark link。它将为您提供以下内容: -

  

指定要执行的目标,例如“clean install”“deploy” 此字段还可以接受Maven 的任何其他命令行选项,例如“ - e”“ - Dmaven.test。跳过=真“即可。

然后Build ---> Goals and options的合适值应该是clean install -X

我希望这可能有所帮助。