FAQ  •  Register  •  Login

Exception in thread "main" java.lang.NoClassDefFoundError

<<

scanf

Serviio newbie

Posts: 2

Joined: Tue Oct 22, 2013 12:55 pm

Post Tue Oct 22, 2013 1:03 pm

Exception in thread "main" java.lang.NoClassDefFoundError

Hi,


While trying this out on a Linux box, I have the following error:
Exception in thread "main" java.lang.NoClassDefFoundError: org/restlet/service/StatusService

I also set
export SERVIIO_HOME=/usr/local/serviio-1.3.1
but it doesn't matter. Here is a full -x

++ dirname /usr/local/serviio-1.3.1/bin/serviio.sh
+ DIRNAME=/usr/local/serviio-1.3.1/bin
++ basename /usr/local/serviio-1.3.1/bin/serviio.sh
+ PROGNAME=serviio.sh
+ cygwin=false
+ darwin=false
+ linux=false
+ case "`uname`" in
++ uname
+ linux=true
+ false
+ '[' x/usr/local/serviio-1.3.1 = x ']'
+ export SERVIIO_HOME
+ '[' x = x ']'
+ '[' x/usr/lib/jvm/java-6-sun-1.6.0.26 '!=' x ']'
+ JAVA=/usr/lib/jvm/java-6-sun-1.6.0.26/bin/java
+ SERVIIO_CLASS_PATH='/usr/local/serviio-1.3.1/lib/*:/usr/local/serviio-1.3.1/config'
+ JAVA_OPTS='-Djava.net.preferIPv4Stack=true -Djava.awt.headless=true -Dderby.system.home=/usr/local/serviio-1.3.1/library -Dserviio.home=/usr/local/serviio-1.3.1'
+ false
+ /usr/lib/jvm/java-6-sun-1.6.0.26/bin/java -Xmx512M -Xms20M -XX:+UseParNewGC -XX:MinHeapFreeRatio=10 -XX:MaxHeapFreeRatio=20 -Djava.net.preferIPv4Stack=true -Djava.awt.headless=true -Dderby.system.home=/usr/local/serviio-1.3.1/library -Dserviio.home=/usr/local/serviio-1.3.1 -classpath '/usr/local/serviio-1.3.1/lib/*:/usr/local/serviio-1.3.1/config' org.serviio.MediaServer
Exception in thread "main" java.lang.NoClassDefFoundError: org/restlet/service/StatusService
at org.serviio.MediaServer.main(MediaServer.java:112)
Caused by: java.lang.ClassNotFoundException: org.restlet.service.StatusService
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
... 1 more


Looks like the Linux Serviio 1.31 is missing jar files for the Restlet toolkit they use? Please advise.
<<

zip

User avatar

Serviio developer / Site Admin

Posts: 17216

Joined: Sat Oct 24, 2009 12:24 pm

Location: London, UK

Post Tue Oct 22, 2013 10:27 pm

Re: Exception in thread "main" java.lang.NoClassDefFoundErro

The jar files are there. It might be the Linux java doesn't work properly with the * class path notation, so you might have to add all the jar files to the class path list.
<<

scanf

Serviio newbie

Posts: 2

Joined: Tue Oct 22, 2013 12:55 pm

Post Fri Oct 25, 2013 10:43 am

Re: Exception in thread "main" java.lang.NoClassDefFoundErro

Wouldn't be my first thought, as CLASSPATH wildcards are equally supported under Windows and Linux:
http://docs.oracle.com/javase/7/docs/technotes/tools/solaris/classpath.html


Anyway as you suggest:

+ DIRNAME=/usr/local/serviio-1.3.1/bin
++ basename /usr/local/serviio-1.3.1/bin/serviio.sh
+ PROGNAME=serviio.sh
+ cygwin=false
+ darwin=false
+ linux=false
+ case "`uname`" in
++ uname
+ linux=true
+ false
+ '[' x/usr/local/serviio-1.3.1 = x ']'
+ export SERVIIO_HOME
+ '[' x = x ']'
+ '[' x/usr/lib/jvm/java-6-sun-1.6.0.26 '!=' x ']'
+ JAVA=/usr/lib/jvm/java-6-sun-1.6.0.26/bin/java
+ SERVIIO_CLASS_PATH=/usr/local/serviio-1.3.1/lib/commons-io.jar:/usr/local/serviio-1.3.1/lib/concurrent.jar:/usr/local/serviio-1.3.1/lib/derby.jar:/usr/local/serviio-1.3.1/lib/freemarker.jar:/usr/local/serviio-1.3.1/lib/gson.jar:/usr/local/serviio-1.3.1/lib/jaudiotagger.jar:/usr/local/serviio-1.3.1/lib/jcl-over-slf4j.jar:/usr/local/serviio-1.3.1/lib/jcs.jar:/usr/local/serviio-1.3.1/lib/jdom.jar:/usr/local/serviio-1.3.1/lib/jul-to-slf4j.jar:/usr/local/serviio-1.3.1/lib/log4j.jar:/usr/local/serviio-1.3.1/lib/org.restlet.ext.net.jar:/usr/local/serviio-1.3.1/lib/org.restlet.ext.xstream.jar:/usr/local/serviio-1.3.1/lib/rome.jar:/usr/local/serviio-1.3.1/lib/rome-modules.jar:/usr/local/serviio-1.3.1/lib/serviio-client.jar:/usr/local/serviio-1.3.1/lib/serviio.jar:/usr/local/serviio-1.3.1/lib/serviio-media-browser.jar:/usr/local/serviio-1.3.1/lib/slf4j-api.jar:/usr/local/serviio-1.3.1/lib/slf4j-log4j12.jar:/usr/local/serviio-1.3.1/lib/xstream.jar:/usr/local/serviio-1.3.1/config
+ JAVA_OPTS='-Djava.net.preferIPv4Stack=true -Djava.awt.headless=true -Dderby.system.home=/usr/local/serviio-1.3.1/library -Dserviio.home=/usr/local/serviio-1.3.1'
+ false
+ /usr/lib/jvm/java-6-sun-1.6.0.26/bin/java -classpath /usr/local/serviio-1.3.1/lib/commons-io.jar:/usr/local/serviio-1.3.1/lib/concurrent.jar:/usr/local/serviio-1.3.1/lib/derby.jar:/usr/local/serviio-1.3.1/lib/freemarker.jar:/usr/local/serviio-1.3.1/lib/gson.jar:/usr/local/serviio-1.3.1/lib/jaudiotagger.jar:/usr/local/serviio-1.3.1/lib/jcl-over-slf4j.jar:/usr/local/serviio-1.3.1/lib/jcs.jar:/usr/local/serviio-1.3.1/lib/jdom.jar:/usr/local/serviio-1.3.1/lib/jul-to-slf4j.jar:/usr/local/serviio-1.3.1/lib/log4j.jar:/usr/local/serviio-1.3.1/lib/org.restlet.ext.net.jar:/usr/local/serviio-1.3.1/lib/org.restlet.ext.xstream.jar:/usr/local/serviio-1.3.1/lib/rome.jar:/usr/local/serviio-1.3.1/lib/rome-modules.jar:/usr/local/serviio-1.3.1/lib/serviio-client.jar:/usr/local/serviio-1.3.1/lib/serviio.jar:/usr/local/serviio-1.3.1/lib/serviio-media-browser.jar:/usr/local/serviio-1.3.1/lib/slf4j-api.jar:/usr/local/serviio-1.3.1/lib/slf4j-log4j12.jar:/usr/local/serviio-1.3.1/lib/xstream.jar:/usr/local/serviio-1.3.1/config -Xmx512M -Xms20M -XX:+UseParNewGC -XX:MinHeapFreeRatio=10 -XX:MaxHeapFreeRatio=20 -Djava.net.preferIPv4Stack=true -Djava.awt.headless=true -Dderby.system.home=/usr/local/serviio-1.3.1/library -Dserviio.home=/usr/local/serviio-1.3.1 org.serviio.MediaServer
Exception in thread "main" java.lang.NoClassDefFoundError: org/restlet/service/StatusService
at org.serviio.MediaServer.main(MediaServer.java:112)
Caused by: java.lang.ClassNotFoundException: org.restlet.service.StatusService
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
... 1 more
<<

zip

User avatar

Serviio developer / Site Admin

Posts: 17216

Joined: Sat Oct 24, 2009 12:24 pm

Location: London, UK

Post Fri Oct 25, 2013 3:50 pm

Re: Exception in thread "main" java.lang.NoClassDefFoundErro

Looks like the restlet jar (org.restlet.jar) is missing on your classpath. I just tried to download the Linux bundle and it's there
<<

zachofalltrades

Serviio newbie

Posts: 10

Joined: Tue Oct 22, 2013 8:57 pm

Post Fri Oct 25, 2013 4:09 pm

Re: Exception in thread "main" java.lang.NoClassDefFoundErro

@scanf

Wildcard support for classpath entries was introduced with Java6.You probably have an earlier version of Java that is getting used in place of Java6. If multiple versions of Java are present, the best way to ensure that the correct version is used is to fully specify the path to the java binary when launching the application rather than just calling "java ___".

Return to Serviio Support & Help

Who is online

Users browsing this forum: No registered users and 16 guests

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.