2013-03-15 50 views
2

我有一個運行良好的應用程序引擎1.7.1的應用程序,但是當我升級到1.7.5時,我所有的庫依賴關係都被破壞了。Jetty IncompatibleClassChangeError:實現類

所以我覺得我得到了所有的依賴修正,所以至少我沒有任何編譯時錯誤,但是當我嘗試運行它,我得到以下錯誤:

Mar 15, 2013 11:09:34 AM com.google.apphosting.utils.jetty.JettyLogger warn 
WARNING: failed Jersey Web Application: java.lang.IncompatibleClassChangeError: Implementing class 
Mar 15, 2013 11:09:34 AM com.google.apphosting.utils.jetty.JettyLogger warn 
WARNING: failed c[email protected]c65fb1{/,/Users/bbarrand12/Documents/Eclipse/Workspace/MovieFoneToGo/war}: java.lang.IncompatibleClassChangeError: Implementing class 
Mar 15, 2013 11:09:34 AM com.google.apphosting.utils.jetty.JettyLogger warn 
WARNING: failed [email protected]: java.lang.IncompatibleClassChangeError: Implementing class 
Mar 15, 2013 11:09:34 AM com.google.apphosting.utils.jetty.JettyLogger warn 
WARNING: Error starting handlers 
java.lang.IncompatibleClassChangeError: Implementing class 
    at java.lang.ClassLoader.defineClass1(Native Method) 
    at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631) 
    at java.lang.ClassLoader.defineClass(ClassLoader.java:615) 
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141) 
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:283) 
    at java.net.URLClassLoader.access$000(URLClassLoader.java:58) 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:197) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306) 
    at com.google.appengine.tools.development.IsolatedAppClassLoader.loadClass(IsolatedAppClassLoader.java:213) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247) 
    at com.sun.jersey.api.core.ScanningResourceConfig.init(ScanningResourceConfig.java:79) 
    at com.sun.jersey.api.core.PackagesResourceConfig.init(PackagesResourceConfig.java:104) 
    at com.sun.jersey.api.core.PackagesResourceConfig.<init>(PackagesResourceConfig.java:78) 
    at com.sun.jersey.api.core.PackagesResourceConfig.<init>(PackagesResourceConfig.java:89) 
    at com.sun.jersey.spi.container.servlet.WebComponent.createResourceConfig(WebComponent.java:700) 
    at com.sun.jersey.spi.container.servlet.WebComponent.createResourceConfig(WebComponent.java:678) 
    at com.sun.jersey.spi.container.servlet.WebComponent.init(WebComponent.java:203) 
    at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:374) 
    at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:557) 
    at javax.servlet.GenericServlet.init(GenericServlet.java:212) 
    at org.mortbay.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:440) 
    at org.mortbay.jetty.servlet.ServletHolder.doStart(ServletHolder.java:263) 
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) 
    at org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:685) 
    at org.mortbay.jetty.servlet.Context.startContext(Context.java:140) 
    at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1250) 
    at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:517) 
    at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:467) 
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) 
    at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130) 
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) 
    at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130) 
    at org.mortbay.jetty.Server.doStart(Server.java:224) 
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) 
    at com.google.appengine.tools.development.JettyContainerService.startContainer(JettyContainerService.java:228) 
    at com.google.appengine.tools.development.AbstractContainerService.startup(AbstractContainerService.java:255) 
    at com.google.appengine.tools.development.AbstractServer.startup(AbstractServer.java:79) 
    at com.google.appengine.tools.development.DevAppServerImpl$Servers.startup(DevAppServerImpl.java:451) 
    at com.google.appengine.tools.development.DevAppServerImpl.start(DevAppServerImpl.java:198) 
    at com.google.appengine.tools.development.DevAppServerMain$StartAction.apply(DevAppServerMain.java:333) 
    at com.google.appengine.tools.util.Parser$ParseResult.applyArgs(Parser.java:48) 
    at com.google.appengine.tools.development.DevAppServerMain.<init>(DevAppServerMain.java:269) 
    at com.google.appengine.tools.development.DevAppServerMain.main(DevAppServerMain.java:245) 

任何想法,爲什麼這已破了。也許我只是爲了更新其他一些罐子?

這裏是我的依賴關係: enter image description here

+2

這些帖子能幫忙嗎? http://stackoverflow.com/a/12241279/2086065 http://stackoverflow.com/a/13103587/2086065 http://stackoverflow.com/a/13552626/2086065 – longhua 2013-03-15 15:36:52

回答

2

我覺得有可能是新澤西州和GAE之間的兼容性問題。根據this,現在與Google App Engine兼容的Jersey版本是1.5和1.1.5。

This post may also help。