Take the 2-minute tour ×
Raspberry Pi Stack Exchange is a question and answer site for users and developers of hardware and software for Raspberry Pi. It's 100% free, no registration required.

I have installed Jenkins, using sudo apt-get install jenkins and it did not work immediately, so i worked out to increase the size of the /run tmpfs. Now I am still getting errors in my jenkins.log, and I cannot access the web interface.

Running from: /usr/share/jenkins/jenkins.war
14 Aug 2012 08:28:13 winstone.Logger logInternal
SEVERE: Container startup failed
java.io.IOException: Failed to start a listener: winstone.ssl.HttpsListener
   at winstone.Launcher.spawnListener(Launcher.java:229)
   at winstone.Launcher.<init>(Launcher.java:185)
   at winstone.Launcher.main(Launcher.java:384)
   at java.lang.reflect.Method.invoke(libgcj.so.13)
   at Main._main(Main.java:285)
   at Main.main(Main.java:98)
Caused by: java.lang.NoClassDefFoundError: winstone.ssl.HttpsListener
   at java.lang.Class.initializeClass(libgcj.so.13)
   at java.lang.Class.forName(libgcj.so.13)
   at winstone.Launcher.spawnListener(Launcher.java:213)
   ...5 more
Caused by: java.lang.ClassNotFoundException: sun.security.util.DerValue not found in java.net.URLClassLoader{urls=[file:/tmp/winstone1fdfcs.jar], parent=gnu.gcj.runtime.SystemClassLoader{urls=[file:/usr/share/jenkins/jenkins.war], parent=gnu.gcj.runtime.ExtensionClassLoader{urls=[], parent=null}}}
   at java.net.URLClassLoader.findClass(libgcj.so.13)
   at java.lang.ClassLoader.loadClass(libgcj.so.13)
   at java.lang.ClassLoader.loadClass(libgcj.so.13)
   at java.lang.Class.initializeClass(libgcj.so.13)
   ...7 more
Running from: /usr/share/jenkins/jenkins.war
14 Aug 2012 08:33:33 winstone.Logger logInternal
INFO: Beginning extraction from war file
14 Aug 2012 08:34:01 hudson.WebAppMain contextInitialized
SEVERE: Failed to initialize Jenkins
java.lang.ExceptionInInitializerError
   at java.lang.Class.initializeClass(libgcj.so.13)
   at hudson.WebAppMain.installLogger(WebAppMain.java:264)
   at hudson.WebAppMain.contextInitialized(WebAppMain.java:107)
   at winstone.WebAppConfiguration.<init>(WebAppConfiguration.java:875)
   at winstone.HostConfiguration.initWebApp(HostConfiguration.java:129)
   at winstone.HostConfiguration.<init>(HostConfiguration.java:71)
   at winstone.HostGroup.initHost(HostGroup.java:87)
   at winstone.HostGroup.<init>(HostGroup.java:47)
   at winstone.Launcher.<init>(Launcher.java:177)
   at winstone.Launcher.main(Launcher.java:384)
   at java.lang.reflect.Method.invoke(libgcj.so.13)
   at Main._main(Main.java:285)
   at Main.main(Main.java:98)
Caused by: java.lang.NullPointerException
   at com.thoughtworks.xstream.core.JVM.isOpenJDK(JVM.java:72)
   at com.thoughtworks.xstream.core.JVM.canUseSun14ReflectionProvider(JVM.java:198)
   at com.thoughtworks.xstream.core.JVM.bestReflectionProvider(JVM.java:175)
   at com.thoughtworks.xstream.XStream.<init>(XStream.java:431)
   at com.thoughtworks.xstream.XStream.<init>(XStream.java:385)
   at com.thoughtworks.xstream.XStream.<init>(XStream.java:323)
   at hudson.util.XStream2.<init>(XStream2.java:73)
   at jenkins.model.Jenkins.<clinit>(Jenkins.java:3510)
   at java.lang.Class.initializeClass(libgcj.so.13)
   at hudson.WebAppMain.installLogger(WebAppMain.java:264)
   at hudson.WebAppMain.contextInitialized(WebAppMain.java:107)
   at winstone.WebAppConfiguration.<init>(WebAppConfiguration.java:875)
   at winstone.HostConfiguration.initWebApp(HostConfiguration.java:129)
   at winstone.HostConfiguration.<init>(HostConfiguration.java:71)
14 Aug 2012 08:34:03 winstone.Logger logInternal
SEVERE: Error during context startup for webapp webapp
java.lang.ExceptionInInitializerError
   at java.lang.Class.initializeClass(libgcj.so.13)
   at hudson.WebAppMain.installLogger(WebAppMain.java:264)
   at hudson.WebAppMain.contextInitialized(WebAppMain.java:107)
   at winstone.WebAppConfiguration.<init>(WebAppConfiguration.java:875)
   at winstone.HostConfiguration.initWebApp(HostConfiguration.java:129)
   at winstone.HostConfiguration.<init>(HostConfiguration.java:71)
   at winstone.HostGroup.initHost(HostGroup.java:87)
   at winstone.HostGroup.<init>(HostGroup.java:47)
   at winstone.Launcher.<init>(Launcher.java:177)
   at winstone.Launcher.main(Launcher.java:384)
   at java.lang.reflect.Method.invoke(libgcj.so.13)
   at Main._main(Main.java:285)
   at Main.main(Main.java:98)
Caused by: java.lang.NullPointerException
   at com.thoughtworks.xstream.core.JVM.isOpenJDK(JVM.java:72)
   at com.thoughtworks.xstream.core.JVM.canUseSun14ReflectionProvider(JVM.java:198)
   at com.thoughtworks.xstream.core.JVM.bestReflectionProvider(JVM.java:175)
   at com.thoughtworks.xstream.XStream.<init>(XStream.java:431)
   at com.thoughtworks.xstream.XStream.<init>(XStream.java:385)
   at com.thoughtworks.xstream.XStream.<init>(XStream.java:323)
   at hudson.util.XStream2.<init>(XStream2.java:73)
   at jenkins.model.Jenkins.<clinit>(Jenkins.java:3510)
   at java.lang.Class.initializeClass(libgcj.so.13)
   at hudson.WebAppMain.installLogger(WebAppMain.java:264)
   at hudson.WebAppMain.contextInitialized(WebAppMain.java:107)
   at winstone.WebAppConfiguration.<init>(WebAppConfiguration.java:875)
   at winstone.HostConfiguration.initWebApp(HostConfiguration.java:129)
   at winstone.HostConfiguration.<init>(HostConfiguration.java:71)
14 Aug 2012 08:34:03 winstone.Logger logInternal
INFO: HTTP Listener started: port=8080
14 Aug 2012 08:34:03 winstone.Logger logInternal
SEVERE: Error during servlet context shutdown
java.lang.NoClassDefFoundError: jenkins.model.Jenkins
   at java.lang.Class.initializeClass(libgcj.so.13)
   at hudson.WebAppMain.contextDestroyed(WebAppMain.java:347)
   at winstone.WebAppConfiguration.destroy(WebAppConfiguration.java:1149)
   at winstone.HostConfiguration.destroyWebApp(HostConfiguration.java:148)
   at winstone.HostConfiguration.destroy(HostConfiguration.java:156)
   at winstone.HostGroup.destroy(HostGroup.java:77)
   at winstone.Launcher.shutdown(Launcher.java:337)
   at winstone.Launcher.<init>(Launcher.java:199)
   at winstone.Launcher.main(Launcher.java:384)
   at java.lang.reflect.Method.invoke(libgcj.so.13)
   at Main._main(Main.java:285)
   at Main.main(Main.java:98)
14 Aug 2012 08:34:03 winstone.Logger logInternal
INFO: Winstone shutdown successfully
14 Aug 2012 08:34:03 winstone.Logger logInternal
SEVERE: Container startup failed
java.io.IOException: Failed to start a listener: winstone.ssl.HttpsListener
   at winstone.Launcher.spawnListener(Launcher.java:229)
   at winstone.Launcher.<init>(Launcher.java:185)
   at winstone.Launcher.main(Launcher.java:384)
   at java.lang.reflect.Method.invoke(libgcj.so.13)
   at Main._main(Main.java:285)
   at Main.main(Main.java:98)
Caused by: java.lang.NoClassDefFoundError: winstone.ssl.HttpsListener
   at java.lang.Class.initializeClass(libgcj.so.13)
   at java.lang.Class.forName(libgcj.so.13)
   at winstone.Launcher.spawnListener(Launcher.java:213)
   ...5 more
Caused by: java.lang.ClassNotFoundException: sun.security.util.DerValue not found in java.net.URLClassLoader{urls=[file:/tmp/winstonepwah1w.jar], parent=gnu.gcj.runtime.SystemClassLoader{urls=[file:/usr/share/jenkins/jenkins.war], parent=gnu.gcj.runtime.ExtensionClassLoader{urls=[], parent=null}}}
   at java.net.URLClassLoader.findClass(libgcj.so.13)
   at java.lang.ClassLoader.loadClass(libgcj.so.13)
   at java.lang.ClassLoader.loadClass(libgcj.so.13)
   at java.lang.Class.initializeClass(libgcj.so.13)
   ...7 more

Additional information

I do not have physical access to the pi for about 5 days, so I can't reinstall the OS or similar, however I do have VNC access and I can enable SSH if i need to.

I have rebooted the pi several times, and this did not fix the problem.

share|improve this question
    
@ppumkin It did not show 8080 as an open port. –  bearbin Aug 14 '12 at 10:06
    
let us continue this discussion in chat –  bearbin Aug 14 '12 at 10:10
    
Java does not run well on the pi - Jenkins is written in Java and expects "lots" of memory. –  Thorbjørn Ravn Andersen Aug 14 '12 at 21:41
    
@bearbin How have you increased the /run partition? –  keiki Aug 19 '12 at 10:10
    
@otakun85 I edited the /etc/default/tmpfs using sudo nano /etc/default/tmpfs then I changed the size under the /run part to about 40 MiB (This may not be completely correct, but I'm pretty sure it's right.) –  bearbin Aug 19 '12 at 15:19

1 Answer 1

up vote 10 down vote accepted

From looking at the log file I came across the line

INFO: HTTP Listener started: port=8080

java.io.IOException: Failed to start a listener: winstone.ssl.HttpsListener

This tells us that either the port you are using 8080 is in use but you have run netstat and established that it is not listed- so its available and not causing the exception.

Looking more closely the exception talks about ssl.httplistener - Jenkins requires Java version 6 or above and extra libraries to run.

So you should run the command java -version

java version 1.5.0 gij (GNU libgij)

If you get the above response then Jenkins will not start. That is because it does not support the official distribution of Java packed in mainstream Linux. It supports OpenJDK or Sun-Java (Sun-Java is nearly supported on Raspberry Pi)

You can resolve the issue by running

sudo update-alternatives --config java

then chose OpenJDK followed by a reboot of the Pi.

Jenkins starts up as expected after boot.

There was an initial high CPU load reported by the OP but he seems to be happy with the result in the end.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.