java.lang.NoClassDefFoundError: javax/jdo/spi/Detachable

311 views
Skip to first unread message

Karthikaiselvan R

unread,
Aug 26, 2015, 12:40:37 PM8/26/15
to Google App Engine

Following error is not coming when I clean and build project. But, this happens whenever I do change java files which intern triggers hot code swap.
Note: I have removed Datanucleus Enhancer and I don't have any JDO dependancy in pom. Though I am not using jdo, I am getting following error. 
I am just trying to use only JPA with EclipseLink.
What might the reason for this error?

[INFO] WARNING: Error for /_ah/spi/BackendService.getApiConfigs
[INFO] java.lang.NoClassDefFoundError: javax/jdo/spi/Detachable
[INFO] at java.lang.ClassLoader.defineClass1(Native Method)
[INFO] at java.lang.ClassLoader.defineClass(ClassLoader.java:800)
[INFO] at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
[INFO] at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
[INFO] at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
[INFO] at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
[INFO] at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
[INFO] at java.security.AccessController.doPrivileged(Native Method)
[INFO] at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
[INFO] at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
[INFO] at com.google.appengine.tools.development.IsolatedAppClassLoader.loadClass(IsolatedAppClassLoader.java:199)
[INFO] at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
[INFO] at java.lang.Class.getDeclaredMethods0(Native Method)
[INFO] at java.lang.Class.privateGetDeclaredMethods(Class.java:2570)
[INFO] at java.lang.Class.getDeclaredMethods(Class.java:1855)
[INFO] at com.google.api.server.spi.MethodHierarchyReader.buildServiceMethods(MethodHierarchyReader.java:177)
[INFO] at com.google.api.server.spi.MethodHierarchyReader.readMethodHierarchyIfNecessary(MethodHierarchyReader.java:50)
[INFO] at com.google.api.server.spi.MethodHierarchyReader.getEndpointOverrides(MethodHierarchyReader.java:131)
[INFO] at com.google.api.server.spi.config.annotationreader.ApiConfigAnnotationReader.readEndpointMethods(ApiConfigAnnotationReader.java:279)
[INFO] at com.google.api.server.spi.config.annotationreader.ApiConfigAnnotationReader.loadEndpointMethods(ApiConfigAnnotationReader.java:66)
[INFO] at com.google.api.server.spi.config.ApiConfigLoader.loadConfiguration(ApiConfigLoader.java:76)
[INFO] at com.google.api.server.spi.SystemService.registerService(SystemService.java:144)
[INFO] at com.google.api.server.spi.SystemServiceServlet.registerService(SystemServiceServlet.java:179)
[INFO] at com.google.api.server.spi.SystemServiceServlet.createSystemService(SystemServiceServlet.java:172)
[INFO] at com.google.api.server.spi.SystemServiceServlet.createSystemService(SystemServiceServlet.java:136)
[INFO] at com.google.api.server.spi.SystemServiceServlet.init(SystemServiceServlet.java:59)
[INFO] at org.mortbay.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:440)
[INFO] at org.mortbay.jetty.servlet.ServletHolder.getServlet(ServletHolder.java:339)
[INFO] at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
[INFO] at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166)
[INFO] at com.googlecode.objectify.ObjectifyFilter.doFilter(ObjectifyFilter.java:48)
[INFO] at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
[INFO] at com.google.appengine.api.socket.dev.DevSocketFilter.doFilter(DevSocketFilter.java:74)
[INFO] at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
[INFO] at com.google.appengine.tools.development.ResponseRewriterFilter.doFilter(ResponseRewriterFilter.java:127)
[INFO] at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
[INFO] at com.google.appengine.tools.development.HeaderVerificationFilter.doFilter(HeaderVerificationFilter.java:34)
[INFO] at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
[INFO] at com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java:63)
[INFO] at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
[INFO] at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)
[INFO] at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
[INFO] at com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java:125)
[INFO] at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
[INFO] at com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectRequest(DevAppServerModulesFilter.java:366)
[INFO] at com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectModuleRequest(DevAppServerModulesFilter.java:349)
[INFO] at com.google.appengine.tools.development.DevAppServerModulesFilter.doFilter(DevAppServerModulesFilter.java:116)
[INFO] at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
[INFO] at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
[INFO] at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
[INFO] at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
[INFO] at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
[INFO] at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
[INFO] at com.google.appengine.tools.development.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java:98)
[INFO] at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
[INFO] at com.google.appengine.tools.development.JettyContainerService$ApiProxyHandler.handle(JettyContainerService.java:503)
[INFO] at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
[INFO] at org.mortbay.jetty.Server.handle(Server.java:326)
[INFO] at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
[INFO] at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:938)
[INFO] at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:755)
[INFO] at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218)
[INFO] at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
[INFO] at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)
[INFO] at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)
[INFO] Caused by: java.lang.ClassNotFoundException: javax.jdo.spi.Detachable
[INFO] at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
[INFO] at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
[INFO] at java.security.AccessController.doPrivileged(Native Method)
[INFO] at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
[INFO] at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
[INFO] at com.google.appengine.tools.development.IsolatedAppClassLoader.loadClass(IsolatedAppClassLoader.java:199)
[INFO] at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
[INFO] ... 65 more
[INFO] 

Nick (Cloud Platform Support)

unread,
Aug 27, 2015, 7:55:29 PM8/27/15
to Google App Engine
Hi Karthikaiselvan,

Generally, a question like this is off-topic and more suited to stackoverflow.com. This forum is meant for more general discussion of the platform, and your thread represents a specific issue you've encountered. However, I'm happy to help a bit nonetheless.

It seems as though this error is appearing because either one of your classes or a class you're using requires that class. Are you sure there are no references to JDO in your project? You can use the grep command if you're on linux to recursively check the contents of all source files and config files. Another method which might help is to clear the m2e cache in eclipse (I assume you're using it from the fact that you said "clean & build", and it's a very popular Java IDE).

Let me know if you have any luck with searching for JDO references or dependencies in your project.

Sincerely,

Nick
Reply all
Reply to author
Forward
0 new messages