系统属性管理

时间:2015-04-09 13:01:14

标签: jenkins

在Jenkins中是否有任何“足够”的方法来更改系统属性?改变它们的最简单/最快的方法是什么?例如,我需要关闭无用的(在我的情况下)ping线程。

7 个答案:

答案 0 :(得分:20)

如果您真的想要一种快速简单的方法来更改系统属性,可以使用script console

System.setProperty("hudson.remoting.Launcher.pingIntervalSec", 0)

但是重启后不会幸免。要使其永久化,请将设置添加到java args。对我来说(CentOS,Jenkins 2.7.1),大约在/etc/sysconfig/jenkins的一半(对于我相信的其他发行版/etc/default/jenkins),您应该在现有的地方添加您的选项像这样的列表:

JENKINS_JAVA_OPTIONS="-Djava.awt.headless=true -Dhudson.remoting.Launcher.pingIntervalSec=0"

在您做出更改后,您必须重新启动Jenkins(感谢Mark Tickner)

答案 1 :(得分:8)

如果您在Windows上运行Jenkins作为没有tomcat的服务,则可以编辑jenkins.xml。在<service><arguments>之前的-jar中添加该媒体资源。 然后重启服务。

<service>
    <!-- ... -->
    <arguments>-Xrs -Xmx256m  -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle  -Dhudson.tasks.MailSender.SEND_TO_UNKNOWN_USERS=true  -Dhudson.tasks.MailSender.SEND_TO_USERS_WITHOUT_READ=true  -jar "%BASE%\jenkins.war" --httpPort=8080 --webroot="%BASE%\war"</arguments>

答案 2 :(得分:3)

维基上列出了可用的系统属性以及如何设置它们:
https://wiki.jenkins-ci.org/display/JENKINS/Features+controlled+by+system+properties

要禁用从属ping操作,您可以将hudson.remoting.Launcher.pingIntervalSec设置为0

系统属性的设置方式与任何其他Java程序相同,例如: java -Dhudson.remoting.Launcher.pingIntervalSec=0 -jar jenkins.war

答案 3 :(得分:2)

如果您在Windows上使用Tomcat,则可以编辑文件C:\apache-tomcat-7.0.67\conf\catalina.properties,只需添加行

即可

hudson.DNSMultiCast.disabled=true

在文件的末尾。然后保护文件并重启Tomcat。

答案 4 :(得分:1)

我有类似的问题:我需要禁用DNSMultiCast(设置hudson.DNSMultiCast.disabled = false),我无法理解如何做到这一点

例如,https://wiki.jenkins-ci.org/display/JENKINS/Features+controlled+by+system+properties - 有这样的建议“......在-jar参数之前传递所有这些参数......”但我在tomcat下运行jenkins所以我不确定我是否可以更改启动参数。

我尝试将/etc/tomcat6/Catalina/localhost/jenkins.xml更改为

<?xml version="1.0" encoding="UTF-8"?>
<Context >
 <Environment name="JENKINS_HOME" value="/var/jenkins"
         type="java.lang.String" override="false"/>
 <Environment name="hudson.DNSMultiCast.disabled" value="true"
         type="java.lang.Boolean" override="false"/>
</Context>

但我没有帮助。 有人可以解释在使用tomcat时如何更改jenkins系统属性。

答案 5 :(得分:0)

也许这是一个糟糕的黑客,但我把它设置在需要设置的管道工作中 像这样:

System.setProperty("hudson.model.DirectoryBrowserSupport.CSP", "")  // allow formatted HTML pages to be published

它似乎有效 - 据我所知......

答案 6 :(得分:0)

我遵循了上面提到的每个步骤,但是失败了。

因此,我确实使用 timedatectl set-timezone Europe/London 命令更改了系统时区,然后重新启动了jenkins服务 service jenkins restart

  1. 我正在使用Rehdat 7.5
  2. Jenkins版本2.168。
  3. Jenkins通过yum install jenkins
  4. 安装

我希望这会有所帮助。