sun.security.x509.CertAndKeyGen not found in java.net.URLClassLoader trying to start Jenkins on Debian

4,694 views
Skip to first unread message

Chris Withers

unread,
Dec 24, 2011, 5:15:54 AM12/24/11
to Jenkins Users
Hi All,

I have a server running Debian stable, I installed Jenkins using
aptitude from the packages at http://pkg.jenkins-ci.org/debian:

# dpkg -l | grep jenkins
ii jenkins 1.444

I hope this covers the relevant java bits for versions:

# dpkg -l | grep java
ii gjdoc 0.7.9-1
ii java-common 0.40
ii java-gcj-compat 1.0.78-2
ii java-gcj-compat-dev 1.0.78-2
ii java-gcj-compat-headless 1.0.78-2
ii javascript-common 7
ii libantlr-java 2.7.7-16
ii libantlr-java-gcj 2.7.7-16
ii libbcel-java 5.2-7
ii libecj-java 3.5.1-1
ii libecj-java-gcj 3.5.1-1
ii libgcj9-src 4.3.2-2
ii liblog4j1.2-java 1.2.15-11
ii liblog4j1.2-java-gcj 1.2.15-11
ii libmx4j-java 3.0.2-10
ii libregexp-java 1.5-2

So, I attempt to start jenkins with:

# service jenkins start
Starting Jenkins Continuous Integration Server: jenkinsSetting up max
open files limit to 8192
.

..but it doesn't start, and the log contains:

# cat /var/log/jenkins/jenkins.log
Running from: /usr/share/jenkins/jenkins.war
[Winstone 2011/12/24 10:10:54] - Beginning extraction from war file
Dec 24, 2011 10:10:55 a.m. hudson.WebAppMain contextInitialized
SEVERE: Failed to initialize Jenkins
java.lang.ExceptionInInitializerError
at java.lang.Class.initializeClass(libgcj.so.10)
at hudson.WebAppMain.installLogger(WebAppMain.java:265)
at hudson.WebAppMain.contextInitialized(WebAppMain.java:107)
at winstone.WebAppConfiguration.<init>(WebAppConfiguration.java:897)
at winstone.HostConfiguration.initWebApp(HostConfiguration.java:131)
at winstone.HostConfiguration.<init>(HostConfiguration.java:73)
at winstone.HostGroup.initHost(HostGroup.java:85)
at winstone.HostGroup.<init>(HostGroup.java:45)
at winstone.Launcher.<init>(Launcher.java:197)
at winstone.Launcher.main(Launcher.java:398)
at java.lang.reflect.Method.invoke(libgcj.so.10)
at Main._main(Main.java:268)
at Main.main(Main.java:96)
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:3516)
at java.lang.Class.initializeClass(libgcj.so.10)
...12 more
[Winstone 2011/12/24 10:10:55] - Error during context startup for webapp
webapp
java.lang.ExceptionInInitializerError
at java.lang.Class.initializeClass(libgcj.so.10)
at hudson.WebAppMain.installLogger(WebAppMain.java:265)
at hudson.WebAppMain.contextInitialized(WebAppMain.java:107)
at winstone.WebAppConfiguration.<init>(WebAppConfiguration.java:897)
at winstone.HostConfiguration.initWebApp(HostConfiguration.java:131)
at winstone.HostConfiguration.<init>(HostConfiguration.java:73)
at winstone.HostGroup.initHost(HostGroup.java:85)
at winstone.HostGroup.<init>(HostGroup.java:45)
at winstone.Launcher.<init>(Launcher.java:197)
at winstone.Launcher.main(Launcher.java:398)
at java.lang.reflect.Method.invoke(libgcj.so.10)
at Main._main(Main.java:268)
at Main.main(Main.java:96)
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:3516)
at java.lang.Class.initializeClass(libgcj.so.10)
...12 more

[Winstone 2011/12/24 10:10:55] - HTTP Listener started: port=8080
[Winstone 2011/12/24 10:10:55] - Error during servlet context shutdown
java.lang.NoClassDefFoundError: jenkins.model.Jenkins
at java.lang.Class.initializeClass(libgcj.so.10)
at hudson.WebAppMain.contextDestroyed(WebAppMain.java:348)
at winstone.WebAppConfiguration.destroy(WebAppConfiguration.java:1179)
at winstone.HostConfiguration.destroyWebApp(HostConfiguration.java:150)
at winstone.HostConfiguration.destroy(HostConfiguration.java:158)
at winstone.HostGroup.destroy(HostGroup.java:75)
at winstone.Launcher.shutdown(Launcher.java:358)
at winstone.Launcher.<init>(Launcher.java:220)
at winstone.Launcher.main(Launcher.java:398)
at java.lang.reflect.Method.invoke(libgcj.so.10)
at Main._main(Main.java:268)
at Main.main(Main.java:96)

[Winstone 2011/12/24 10:10:55] - Winstone shutdown successfully
[Winstone 2011/12/24 10:10:55] - Container startup failed
java.io.IOException: Failed to start a listener: winstone.ssl.HttpsListener
at winstone.Launcher.spawnListener(Launcher.java:250)
at winstone.Launcher.<init>(Launcher.java:206)
at winstone.Launcher.main(Launcher.java:398)
at java.lang.reflect.Method.invoke(libgcj.so.10)
at Main._main(Main.java:268)
at Main.main(Main.java:96)
Caused by: java.lang.NoClassDefFoundError: winstone.ssl.HttpsListener
at java.lang.Class.initializeClass(libgcj.so.10)
at java.lang.Class.forName(libgcj.so.10)
at java.lang.Class.forName(libgcj.so.10)
at winstone.Launcher.spawnListener(Launcher.java:234)
...5 more
Caused by: java.lang.ClassNotFoundException:
sun.security.x509.CertAndKeyGen not found in
java.net.URLClassLoader{urls=[file:/tm

p/winstoneiwth0wjar],
parent=gnu.gcj.runtime.SystemClassLoader{urls=[file:/usr/share/jenkins/jenkins.war],
parent=gnu.gcj.runtim

e.ExtensionClassLoader{urls=[], parent=null}}}
at java.net.URLClassLoader.findClass(libgcj.so.10)
at java.lang.ClassLoader.loadClass(libgcj.so.10)
at java.lang.ClassLoader.loadClass(libgcj.so.10)
at java.lang.Class.forName(libgcj.so.10)
at java.lang.Class.initializeClass(libgcj.so.10)
...8 more

What am I doing wrong and how can I get Jenkins working?

cheers,

Chris

--
Simplistix - Content Management, Batch Processing & Python Consulting
- http://www.simplistix.co.uk

David Karlsen

unread,
Dec 24, 2011, 9:43:28 AM12/24/11
to jenkins...@googlegroups.com

Try a sun jdk instead and it should work.

Chris Withers

unread,
Dec 24, 2011, 11:54:10 AM12/24/11
to jenkins...@googlegroups.com, David Karlsen
Well, I think I've done that now, I added:

deb http://ftp.uk.debian.org/debian/ stable non-free

...to /etc/apt/source.list

I then did:

aptitude update && aptitude install sun-java6-jdk

Still no dice, so to be paranoid, I did:

aptitude purge jenkins && aptitude install jenkins

However, attempting to start Jenkins still results in the same error:

Caused by: java.lang.ClassNotFoundException:
sun.security.x509.CertAndKeyGen not found in

java.net.URLClassLoader{urls=[file:/tmp/winstonedtoy9ojar],

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.10)
at java.lang.ClassLoader.loadClass(libgcj.so.10)
at java.lang.ClassLoader.loadClass(libgcj.so.10)
at java.lang.Class.forName(libgcj.so.10)
at java.lang.Class.initializeClass(libgcj.so.10)
...8 more

Any ideas what to try next?

Chris

On 24/12/2011 14:43, David Karlsen wrote:
> Try a sun jdk instead and it should work.
>
> Den 24. des. 2011 11:15 skrev "Chris Withers" <ch...@simplistix.co.uk

> <mailto:ch...@simplistix.co.uk>> f�lgende:


>
> Hi All,
>
> I have a server running Debian stable, I installed Jenkins using

> aptitude from the packages at http://pkg.jenkins-ci.org/__debian

> java.lang.__ExceptionInInitializerError
> at java.lang.Class.__initializeClass(libgcj.so.10)
> at hudson.WebAppMain.__installLogger(WebAppMain.java:__265)
> at hudson.WebAppMain.__contextInitialized(WebAppMain.__java:107)
> at
> winstone.WebAppConfiguration.<__init>(WebAppConfiguration.__java:897)
> at
> winstone.HostConfiguration.__initWebApp(HostConfiguration.__java:131)
> at winstone.HostConfiguration.<__init>(HostConfiguration.java:__73)
> at winstone.HostGroup.initHost(__HostGroup.java:85)
> at winstone.HostGroup.<init>(__HostGroup.java:45)
> at winstone.Launcher.<init>(__Launcher.java:197)
> at winstone.Launcher.main(__Launcher.java:398)
> at java.lang.reflect.Method.__invoke(libgcj.so.10)


> at Main._main(Main.java:268)
> at Main.main(Main.java:96)
> 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:3516)
> at java.lang.Class.__initializeClass(libgcj.so.10)


> ...12 more
> [Winstone 2011/12/24 10:10:55] - Error during context startup for
> webapp webapp

> java.lang.__ExceptionInInitializerError
> at java.lang.Class.__initializeClass(libgcj.so.10)
> at hudson.WebAppMain.__installLogger(WebAppMain.java:__265)
> at hudson.WebAppMain.__contextInitialized(WebAppMain.__java:107)
> at
> winstone.WebAppConfiguration.<__init>(WebAppConfiguration.__java:897)
> at
> winstone.HostConfiguration.__initWebApp(HostConfiguration.__java:131)
> at winstone.HostConfiguration.<__init>(HostConfiguration.java:__73)
> at winstone.HostGroup.initHost(__HostGroup.java:85)
> at winstone.HostGroup.<init>(__HostGroup.java:45)
> at winstone.Launcher.<init>(__Launcher.java:197)
> at winstone.Launcher.main(__Launcher.java:398)
> at java.lang.reflect.Method.__invoke(libgcj.so.10)


> at Main._main(Main.java:268)
> at Main.main(Main.java:96)
> 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:3516)
> at java.lang.Class.__initializeClass(libgcj.so.10)


> ...12 more
>
> [Winstone 2011/12/24 10:10:55] - HTTP Listener started: port=8080
> [Winstone 2011/12/24 10:10:55] - Error during servlet context shutdown

> java.lang.__NoClassDefFoundError: jenkins.model.Jenkins
> at java.lang.Class.__initializeClass(libgcj.so.10)
> at hudson.WebAppMain.__contextDestroyed(WebAppMain.__java:348)
> at
> winstone.WebAppConfiguration.__destroy(WebAppConfiguration.__java:1179)
> at
> winstone.HostConfiguration.__destroyWebApp(__HostConfiguration.java:150)
> at winstone.HostConfiguration.__destroy(HostConfiguration.__java:158)
> at winstone.HostGroup.destroy(__HostGroup.java:75)
> at winstone.Launcher.shutdown(__Launcher.java:358)
> at winstone.Launcher.<init>(__Launcher.java:220)
> at winstone.Launcher.main(__Launcher.java:398)
> at java.lang.reflect.Method.__invoke(libgcj.so.10)


> at Main._main(Main.java:268)
> at Main.main(Main.java:96)
>
> [Winstone 2011/12/24 10:10:55] - Winstone shutdown successfully
> [Winstone 2011/12/24 10:10:55] - Container startup failed
> java.io.IOException: Failed to start a listener:
> winstone.ssl.HttpsListener

> at winstone.Launcher.__spawnListener(Launcher.java:__250)
> at winstone.Launcher.<init>(__Launcher.java:206)
> at winstone.Launcher.main(__Launcher.java:398)
> at java.lang.reflect.Method.__invoke(libgcj.so.10)


> at Main._main(Main.java:268)
> at Main.main(Main.java:96)

> Caused by: java.lang.__NoClassDefFoundError: winstone.ssl.HttpsListener
> at java.lang.Class.__initializeClass(libgcj.so.10)
> at java.lang.Class.forName(__libgcj.so.10)
> at java.lang.Class.forName(__libgcj.so.10)
> at winstone.Launcher.__spawnListener(Launcher.java:__234)
> ...5 more
> Caused by: java.lang.__ClassNotFoundException:
> sun.security.x509.__CertAndKeyGen not found in
> java.net.URLClassLoader{urls=[__file:/tm
> p/winstoneiwth0wjar],
> parent=gnu.gcj.runtime.__SystemClassLoader{urls=[file:/__usr/share/jenkins/jenkins.war]__,
> parent=gnu.gcj.runtim
> e.ExtensionClassLoader{urls=[]__, parent=null}}}
> at java.net.URLClassLoader.__findClass(libgcj.so.10)
> at java.lang.ClassLoader.__loadClass(libgcj.so.10)
> at java.lang.ClassLoader.__loadClass(libgcj.so.10)
> at java.lang.Class.forName(__libgcj.so.10)
> at java.lang.Class.__initializeClass(libgcj.so.10)


> ...8 more
>
> What am I doing wrong and how can I get Jenkins working?
>
> cheers,
>
> Chris
>
> --
> Simplistix - Content Management, Batch Processing & Python Consulting
> - http://www.simplistix.co.uk
>
>

> ______________________________________________________________________
> This email has been scanned by the Symantec Email Security.cloud service.
> For more information please visit http://www.symanteccloud.com
> ______________________________________________________________________

Chris Withers

unread,
Dec 24, 2011, 12:11:08 PM12/24/11
to jenkins...@googlegroups.com, David Karlsen
On 24/12/2011 16:54, Chris Withers wrote:
> Well, I think I've done that now, I added:
>
> deb http://ftp.uk.debian.org/debian/ stable non-free
>
> ...to /etc/apt/source.list
>
> I then did:
>
> aptitude update && aptitude install sun-java6-jdk
>
> Still no dice, so to be paranoid, I did:
>
> aptitude purge jenkins && aptitude install jenkins

What was actually needed was to get rid of the crappy gcj package, I
wish I could have done something like:

dpkg -l | grep gcj | cut -c 5-30 | xargs aptitude remove

...but my shell foo wasn't strong enough, so I did:

dpkg -l | grep gcj

...and then aptitude removed them all by hand.

Anyway, after that, Jenkins picked up the right JDK/JRE and started
working :-)

That was more painful than I was expecting. How come the Jenkins package
for Debian doesn't just specify sun-java6-jdk as a dependency?

Jørgen Tjernø

unread,
Dec 24, 2011, 12:55:48 PM12/24/11
to jenkins...@googlegroups.com
You're still using gcj for your Jenkins instance, and not Sun JVM: gnu.gcj.runtime.SystemClassLoader

You can switch the default java used by running: sudo update-alternatives --config java

- Jørgen.

On Sat, Dec 24, 2011 at 8:54 AM, Chris Withers <ch...@simplistix.co.uk> wrote:
Well, I think I've done that now, I added:

deb http://ftp.uk.debian.org/debian/ stable non-free

...to /etc/apt/source.list

I then did:

aptitude update && aptitude install sun-java6-jdk

Still no dice, so to be paranoid, I did:

aptitude purge jenkins && aptitude install jenkins

However, attempting to start Jenkins still results in the same error:

Caused by: java.lang.ClassNotFoundException: sun.security.x509.CertAndKeyGen not found in java.net.URLClassLoader{urls=[file:/tmp/winstonedtoy9ojar], 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.10)
  at java.lang.ClassLoader.loadClass(libgcj.so.10)
  at java.lang.ClassLoader.loadClass(libgcj.so.10)
  at java.lang.Class.forName(libgcj.so.10)
  at java.lang.Class.initializeClass(libgcj.so.10)
  ...8 more

Any ideas what to try next?

Chris


On 24/12/2011 14:43, David Karlsen wrote:
Try a sun jdk instead and it should work.

Den 24. des. 2011 11:15 skrev "Chris Withers" <ch...@simplistix.co.uk
<mailto:ch...@simplistix.co.uk>> følgende:
Reply all
Reply to author
Forward
0 new messages