简体   繁体   English

詹金斯未能开始

[英]Jenkins Fails to Start

We have a server running FreeBSD 9.1-p17 and Jenkins. 我们有一台运行FreeBSD 9.1-p17和Jenkins的服务器。 I interact with it via PuTTY. 我通过PuTTY与它互动。 We upgraded from Jenkins 1.458 to 1.570, via FreeBSD's ports collection. 我们通过FreeBSD的ports collection从Jenkins 1.458升级到1.570。 Due to this problem with starting, we decided to reinstall. 由于启动时出现这个问题,我们决定重新安装。

First we uninstalled Jenkins, then we moved the main Jenkins folder (/usr/local/eweru-dev/jenkins) to a backup location, and reinstalled (again, from the ports collection). 首先我们卸载了Jenkins,然后我们将主要的Jenkins文件夹(/ usr / local / eweru-dev / jenkins)移动到备份位置,然后重新安装(再次从ports集合中)。 When we reinstalled, we kept the user 'jenkins' from the last install. 当我们重新安装时,我们保留了用户'jenkins'的最后一次安装。

Now, when we try to start Jenkins, we get an error. 现在,当我们尝试启动Jenkins时,我们收到错误。 The error below is from when we try to start it by navigating to /usr/local/share/jenkins and typing java -jar jenkins.war . 下面的错误来自于我们尝试通过导航到/ usr / local / share / jenkins并输入java -jar jenkins.war来启动它。 When we try to run it as a service (with service jenkins onestart ), we get a very similar message. 当我们尝试将其作为服务运行时(使用service jenkins onestart ),我们得到一条非常相似的消息。

The exception looks similar to the one from this blog , but I have tried connecting Jenkins to openjdk 7 and 8 to no avail. 该异常看起来类似于此博客中的异常,但我尝试将Jenkins连接到openjdk 7和8但无济于事。

Is information from our old Jenkins install finding its way into this one, breaking stuff? 来自我们旧的Jenkins的信息安装是否已经找到了解决这个问题的方法? Or maybe there's some compatibility issue with FreeBSD 9.1. 或者可能与FreeBSD 9.1存在一些兼容性问题。

Running from: /usr/local/share/jenkins/jenkins.war
webroot: $user.home/.jenkins
Jul 18, 2014 10:53:51 AM winstone.Logger logInternal
INFO: Beginning extraction from war file
Jul 18, 2014 10:53:51 AM org.eclipse.jetty.util.log.JavaUtilLog info
INFO: jetty-8.y.z-SNAPSHOT
Jul 18, 2014 10:53:55 AM org.eclipse.jetty.util.log.JavaUtilLog info
INFO: NO JSP Support for , did not find org.apache.jasper.servlet.JspServlet
Jenkins home directory: /homes/maxerdwien/.jenkins found at: $user.home/.jenkins
Jul 18, 2014 10:53:55 AM hudson.util.BootFailure publish
SEVERE: Failed to initialize Jenkins
hudson.util.AWTProblem: java.lang.NullPointerException
        at hudson.WebAppMain.contextInitialized(WebAppMain.java:182)
        at org.eclipse.jetty.server.handler.ContextHandler.callContextInitialized(ContextHandler.java:782)
        at org.eclipse.jetty.servlet.ServletContextHandler.callContextInitialized(ServletContextHandler.java:424)
        at org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:774)
        at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:249)
        at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1242)
        at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:717)
        at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:494)
        at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
        at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:95)
        at org.eclipse.jetty.server.Server.doStart(Server.java:282)
        at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
        at winstone.Launcher.<init>(Launcher.java:154)
        at winstone.Launcher.main(Launcher.java:354)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at Main._main(Main.java:293)
        at Main.main(Main.java:98)
Caused by: java.lang.NullPointerException
        at sun.awt.X11FontManager.getDefaultPlatformFont(X11FontManager.java:779)
        at sun.font.SunFontManager$2.run(SunFontManager.java:433)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.font.SunFontManager.<init>(SunFontManager.java:376)
        at sun.awt.X11FontManager.<init>(X11FontManager.java:32)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
        at java.lang.Class.newInstance(Class.java:374)
        at sun.font.FontManagerFactory$1.run(FontManagerFactory.java:83)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.font.FontManagerFactory.getInstance(FontManagerFactory.java:74)
        at java.awt.Font.getFont2D(Font.java:490)
        at java.awt.Font.getFamily(Font.java:1219)
        at java.awt.Font.getFamily_NoClientCode(Font.java:1193)
        at java.awt.Font.getFamily(Font.java:1185)
        at java.awt.Font.toString(Font.java:1682)
        at hudson.util.ChartUtil.<clinit>(ChartUtil.java:229)
        at hudson.WebAppMain.contextInitialized(WebAppMain.java:181)
        ... 19 more

Jul 18, 2014 10:53:56 AM org.eclipse.jetty.util.log.JavaUtilLog warn
WARNING: Failed startup of context w.{,file:/home/maxerdwien/.jenkins/war/},/homes/maxerdwien/.jenkins/war
java.lang.NullPointerException
        at jenkins.util.groovy.GroovyHookScript.run(GroovyHookScript.java:63)
        at hudson.util.BootFailure.publish(BootFailure.java:43)
        at hudson.WebAppMain.contextInitialized(WebAppMain.java:244)
        at org.eclipse.jetty.server.handler.ContextHandler.callContextInitialized(ContextHandler.java:782)
        at org.eclipse.jetty.servlet.ServletContextHandler.callContextInitialized(ServletContextHandler.java:424)
        at org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:774)
        at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:249)
        at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1242)
        at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:717)
        at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:494)
        at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
        at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:95)
        at org.eclipse.jetty.server.Server.doStart(Server.java:282)
        at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
        at winstone.Launcher.<init>(Launcher.java:154)
        at winstone.Launcher.main(Launcher.java:354)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at Main._main(Main.java:293)
        at Main.main(Main.java:98)

Jul 18, 2014 10:53:56 AM org.eclipse.jetty.util.log.JavaUtilLog info
INFO: Started SelectChannelConnector@0.0.0.0:8080
Jul 18, 2014 10:53:56 AM winstone.Logger logInternal
INFO: Winstone Servlet Engine v2.0 running: controlPort=disabled

Any help would be very appreciated. 任何帮助将非常感激。 I've been googling for days. 我一直在谷歌搜索几天。

The FreeBSD server is a headless server. FreeBSD服务器是一个无头服务器。 So it doesn't have any graphics installed, including fonts. 所以它没有安装任何图形,包括字体。

For some reason, Jenkins tries to access fonts when it loads. 出于某种原因,Jenkins尝试在加载时访问字体。 This behavior can be suppressed by adding the option -Djava.awt.headless=true to the container JVM. 通过向容器JVM添加选项-Djava.awt.headless=true可以抑制此行为。 This is the solution that worked for me. 这是对我有用的解决方案。

It looks like some operating systems recognize this type of error, but FreeBSD does not. 看起来某些操作系统会识别出这种类型的错误,但FreeBSD却没有。 https://wiki.jenkins-ci.org/display/JENKINS/Jenkins+got+java.awt.headless+problem https://wiki.jenkins-ci.org/display/JENKINS/Jenkins+got+java.awt.headless+problem

Check the permission of the jenkins folder. 检查jenkins文件夹的权限。 make sure the user run the jenkins server have the permission to access the folder. 确保用户运行jenkins服务器有权访问该文件夹。

For me -Djava.awt.headless=true didn't help at all. 对我来说-Djava.awt.headless=true根本-Djava.awt.headless=true In fact, it's already specified in the Fedora default config, so chances are it's also in the default FreeBSD config. 事实上,它已经在Fedora默认配置中指定,所以很有可能它也在默认的FreeBSD配置中。 For me it missed the fontconfig package. 对我来说它错过了fontconfig包。

Details: http://vault-tec.info/post/98877792626/jenkins-service-unavailable 详情: http//vault-tec.info/post/98877792626/jenkins-service-unavailable

Am facing the same issue here, and adding -Djava.awt.headless=true doesn't help. 我在这里面临同样的问题,并且添加-Djava.awt.headless = true并没有帮助。 I downloaded jenkins.war and tried running it using java -jar jenkins.war on windows 7 & 10 and it doesn't work. 我下载了jenkins.war并尝试在Windows 7和10上使用java -jar jenkins.war运行它并且它不起作用。 Am running java version, 我正在运行java版本,

java version "1.8.0_144"
Java(TM) SE Runtime Environment (build 1.8.0_144-b01)
Java HotSpot(TM) 64-Bit Server VM (build 25.144-b01, mixed mode)

The solution that worked for me , 对我有用的解决方案
1. Uninstall all versions of java and updates from your system 1.从系统中卸载所有版本的Java和更新
2. Cleanup temporary files and registry (I used CCLeaner) 2.清理临时文件和注册表(我使用CCLeaner)
3. Download latest version from Oracle 3.从Oracle下载最新版本
4. Install and like this comment if this solution worked for you ! 4.如果此解决方案适合您,请安装并喜欢此评论!

Additionally, try removing the .jenkins directory, if possible 此外,如果可能,请尝试删除.jenkins目录

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM