ClassCastException:com.google.appengine.tools.development.ApiProxyLocalImpl无法强制转换为com.google.appengine.tools.development.ApiProxyLocal

bli*_*n12 7 java eclipse google-app-engine maven

我是开发maven应用程序并部署到谷歌应用程序引擎的新手.我正在使用appengine 1.9.0eclipse kepler 4.3

然而,当我尝试运行时,我得到一个错误,根据这个博客克里斯,它建议删除这个jar.

appengine-api-labs 
appengine-api-stubs 
appengine-testing
Run Code Online (Sandbox Code Playgroud)

我已经在库中删除它并尝试maven清理但仍然出现错误.下面是我的图书馆.

图书馆

以下是完整的控制台错误:

WARNING: failed _ah_ServeBlobFilter: java.lang.ClassCastException: com.google.appengine.tools.development.ApiProxyLocalImpl cannot be cast to com.google.appengine.tools.development.ApiProxyLocal
3 20, 2014 2:34:57 ?? com.google.apphosting.utils.jetty.JettyLogger warn
WARNING: Failed startup of context com.google.appengine.tools.development.DevAppEngineWebAppContext@87ec13{/,C:\Users\Annette\Desktop\WebCaller\src\main\webapp}
java.lang.ClassCastException: com.google.appengine.tools.development.ApiProxyLocalImpl cannot be cast to com.google.appengine.tools.development.ApiProxyLocal
    at com.google.appengine.api.blobstore.dev.ServeBlobFilter.init(ServeBlobFilter.java:55)
    at org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:97)
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
    at org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:662)
    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:250)
    at com.google.appengine.tools.development.AbstractContainerService.startup(AbstractContainerService.java:305)
    at com.google.appengine.tools.development.AutomaticInstanceHolder.startUp(AutomaticInstanceHolder.java:26)
    at com.google.appengine.tools.development.AbstractModule.startup(AbstractModule.java:79)
    at com.google.appengine.tools.development.Modules.startup(Modules.java:97)
    at com.google.appengine.tools.development.DevAppServerImpl.doStart(DevAppServerImpl.java:255)
    at com.google.appengine.tools.development.DevAppServerImpl.access$000(DevAppServerImpl.java:47)
    at com.google.appengine.tools.development.DevAppServerImpl$1.run(DevAppServerImpl.java:213)
    at com.google.appengine.tools.development.DevAppServerImpl$1.run(DevAppServerImpl.java:211)
    at java.security.AccessController.doPrivileged(Native Method)
    at com.google.appengine.tools.development.DevAppServerImpl.start(DevAppServerImpl.java:211)
    at com.google.appengine.tools.development.DevAppServerMain$StartAction.apply(DevAppServerMain.java:277)
    at com.google.appengine.tools.util.Parser$ParseResult.applyArgs(Parser.java:48)
    at com.google.appengine.tools.development.DevAppServerMain.run(DevAppServerMain.java:219)
    at com.google.appengine.tools.development.DevAppServerMain.main(DevAppServerMain.java:210)
Run Code Online (Sandbox Code Playgroud)

任何人都可以指出它吗?谢谢.

小智 11

我采取了以下步骤来解决问题:

  1. 删除appengine-api-stubs和appengine-testing
  2. 在Properties和Google> App Engine上,我确保选择默认的"App Engine - 1.9.1"
  3. 在属性构建路径上,我删除了与GAE v1.9.1相关的所有JAR,而是从"添加库"中添加了GAE库

令人惊讶的是,虽然我的WEB-INF/lib上有appengine-api-labs,但我的localhost部署工作正常.

最后,我的WEB-INF/lib包含以下内容:

  • AppEngine上,agent.jar中
  • AppEngine上,agentimpl.jar
  • 应用服务引擎的API-1.0-SDK-1.9.1.jar
  • AppEngine上-API实验室-1.9.1.jar
  • AppEngine上-API labs.jar
  • AppEngine上的端点,deps.jar
  • AppEngine上,endpoints.jar
  • AppEngine上-jsr107cache-1.9.1.jar

我希望有所帮助.它对我有用,它有可能对你有用.