如何在Jenkins全局设置每个作业的JVM选项?

rle*_*ndi 16 java configuration jvm-arguments maven jenkins

我最近安装了一个新的JDK(1.7u9),我得到了一些非常奇怪VerifyError的东西.在一个帖子中,我发现如果我使用-XX:-UseSplitVerifier魔术开关进行编译,它可以帮助我.

我想要做的是在Jenkins中全局设置这个Java选项,但是没有找到它的任何配置.有人可以帮我解决这个问题吗?

我能够提出的最接近的事情是通过Maven设置参数,但是我必须为每个项目配置执行它 - 我想避免这种情况.

提前致谢.

And*_*rup 16

在主菜单项Manage Jenkins- >下,Configure System您可以在框中设置它Global MAVEN_OPTS.

您是否希望为Jenkins容器本身启用该选项或仅在其中运行的作业有点不清楚,但如果后者并且您只运行maven作业,那就是我要做的.

干杯,


Cha*_*suk 5

如果您将Jenkins部署到Tomcat或Glassfish,我建议您按以下方式设置进一步的配置: -

Tomcat

设置名为CATALINA_OPTS的环境变量,例如

SET CATALINA_OPTS="-XX:-UseSplitVerifier"
EXPORT CATALINA_OPTS
Run Code Online (Sandbox Code Playgroud)

Glassfish

编辑[your_domain] /config/domain.xml

<java-config ....>
    ....
    <jvm-options>-XX:-UseSplitVerifier</jvm-options>
</java-config>
Run Code Online (Sandbox Code Playgroud)

无论如何,如果将其部署到另一个应用程序服务器,请参阅应用程序服务器管理员指南以配置更多JVM选项.

更新:

如果您只想将此JVM选项应用于Maven项目,请设置名为MAVEN_OPTS的环境变量,例如

SET MAVEN_OPTS="-XX:-UseSplitVerifier"
export MAVEN_OPTS
Run Code Online (Sandbox Code Playgroud)

我希望这可能有所帮助.

问候,

Charlee Ch.


Noa*_*nos 5

在 Windows 上,Jenkins 主目录中有一个jenkins.xml 。只需在参数标签下添加所需的 JVM 选项即可:

<arguments>
    -Xrs -Xmx256m -XX:-UseSplitVerifier 
    -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle 
    -jar "%BASE%\jenkins.war" --httpPort=8080
</arguments>
Run Code Online (Sandbox Code Playgroud)

对于大多数 Linux 发行版,修改JENKINS_ARGS内部文件: /etc/default/jenkins(或 jenkins-oc)

对于 CentOS,修改文件中的 JENKINS_JAVA_OPTIONS : /etc/sysconfig/jenkins(或 jenkins-oc)