Opened 2 years ago

Closed 2 years ago

#1973 closed defect (fixed)

susidns class not found

Reported by: echelon Owned by: zzz
Priority: major Milestone: 0.9.30
Component: apps/susidns Version: 0.9.29
Keywords: Cc:
Parent Tickets:

Description

Hi!

Trying to update my big router (jessy) to 0.9.29-11. First some libjasper issues, solved with upgrading tomcat8 and jetty9 libs to stretch.
Now:
ERROR: Failed to start susidns java.lang.NoClassDefFoundError?: net/i2p/addressbook/DaemonThread
2017/03/26 17:12:39 | java.lang.NoClassDefFoundError?: net/i2p/addressbook/DaemonThread
2017/03/26 17:12:39 | at net.i2p.addressbook.servlet.Servlet.init(Servlet.java:86)
2017/03/26 17:12:39 | at org.eclipse.jetty.servlet.ServletHolder?.initServlet(ServletHolder?.java:616)
2017/03/26 17:12:39 | at org.eclipse.jetty.servlet.ServletHolder?.initialize(ServletHolder?.java:396)
2017/03/26 17:12:39 | at org.eclipse.jetty.servlet.ServletHandler?.initialize(ServletHandler?.java:871)
2017/03/26 17:12:39 | at org.eclipse.jetty.servlet.ServletContextHandler?.startContext(ServletContextHandler?.java:298)
2017/03/26 17:12:39 | at org.eclipse.jetty.webapp.WebAppContext?.startWebapp(WebAppContext?.java:1349)
2017/03/26 17:12:39 | at org.eclipse.jetty.webapp.WebAppContext?.startContext(WebAppContext?.java:1342)
2017/03/26 17:12:39 | at org.eclipse.jetty.server.handler.ContextHandler?.doStart(ContextHandler?.java:741)
2017/03/26 17:12:39 | at org.eclipse.jetty.webapp.WebAppContext?.doStart(WebAppContext?.java:505)
2017/03/26 17:12:39 | at org.eclipse.jetty.util.component.AbstractLifeCycle?.start(AbstractLifeCycle?.java:68)
2017/03/26 17:12:39 | at net.i2p.router.web.WebAppStarter?.startWebApp(WebAppStarter?.java:65)
2017/03/26 17:12:39 | at net.i2p.router.web.RouterConsoleRunner?.startConsole(RouterConsoleRunner?.java:732)
2017/03/26 17:12:39 | at net.i2p.router.web.RouterConsoleRunner?.startup(RouterConsoleRunner?.java:226)
2017/03/26 17:12:39 | at net.i2p.router.startup.RouterAppManager?.addAndStart(RouterAppManager?.java:53)
2017/03/26 17:12:39 | at net.i2p.router.startup.LoadClientAppsJob?$RunApp?.run(LoadClientAppsJob?.java:282)
2017/03/26 17:12:39 | at java.lang.Thread.run(Thread.java:745)
2017/03/26 17:12:39 | at net.i2p.util.I2PThread.run(I2PThread.java:103)
2017/03/26 17:12:39 | Caused by: java.lang.ClassNotFoundException?: net.i2p.addressbook.DaemonThread?
2017/03/26 17:12:39 | at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
2017/03/26 17:12:39 | at java.lang.ClassLoader?.loadClass(ClassLoader?.java:424)
2017/03/26 17:12:39 | at sun.misc.Launcher$AppClassLoader?.loadClass(Launcher.java:331)
2017/03/26 17:12:39 | at java.lang.ClassLoader?.loadClass(ClassLoader?.java:357)
2017/03/26 17:12:39 | at org.eclipse.jetty.webapp.WebAppClassLoader?.loadClass(WebAppClassLoader?.java:450)
2017/03/26 17:12:39 | at org.eclipse.jetty.webapp.WebAppClassLoader?.loadClass(WebAppClassLoader?.java:403)
2017/03/26 17:12:39 | ... 17 more

Subtickets

Change History (3)

comment:1 Changed 2 years ago by zzz

  • Owner set to zzz
  • Status changed from new to accepted
  • Summary changed from susidns class not foung to susidns class not found

Apparently the root cause, for you, is a problem where it needs junit4 for some reason. See #1975

But this can also happen on a very old install, where wrapper.config specifies individual jars in the classpath, instead of *.jar.

I've reproduced it here and will have a fix soon.

comment:2 Changed 2 years ago by zzz

In 8e1079ff744414f38b2ab18c339e14e7110e820a 0.9.29-12:

Add addressbook.jar to classpath, don't fail to start if it's still not found.
This fix covers:
1) Old wrapper.config without addressbook in the classpath
2) Java 9 together with 1)
3) Completely missing addressbook.jar
This does not fix addressbook.jar missing from Debian build.

comment:3 Changed 2 years ago by zzz

  • Resolution set to fixed
  • Status changed from accepted to closed

Fixed in 5f9829ad98ea2f00afedb261d29f89f34571f2d3 0.9.29-12 by adding the new addressbook.jar to the Debian package. Ticket #1975 is not relevant.

Note: See TracTickets for help on using tickets.