部署后查看Google App Engine应用程序时出错

时间:2012-05-03 18:22:35

标签: java eclipse

我使用Eclipse来完成Google App Engine教程来创建留言板。在Eclipse环境中,我的本地机器上的一切正常。我成功将应用程序部署到Google App Engine。 当我访问URL(http://dcsnetlink-guestbook.appspot.com/)查看我的应用程序时,出现以下错误。

错误:服务器错误 服务器遇到错误,无法完成您的请求。 如果问题仍然存在,请报告您的问题并提及此错误消息以及导致该问题的查询

我在网上做了一些研究来解决这个问题,但迄今为止都没有成功。 请帮忙。

以下是Google App Engine日志中与此相关的内容。

留言簿的Google App Engine日志条目 - 2012年5月5日

<上一页20 1-19下一页20>(上:0:00:09之前) 2012-05-05 17:05:14.891 /favicon.ico 304 10ms 0kb 97.90.234.201 - - [05 / May / 2012:17:05:14 -0700]&#34; GET /favicon.ico HTTP / 1.1&#34; 304 0 - - &#34; dcsnetlink-guestbook.appspot.com&#34; ms = 10 cpu_ms = 0 api_cpu_ms = 0 cpm_usd = 0.000045 2012-05-05 17:05:14.726 / 500 3096ms 0kb Mozilla / 5.0(Windows NT 6.1; WOW64)AppleWebKit / 535.19(KHTML,类似Gecko)Chrome / 18.0.1025.168 Safari / 535.19 97.90.234.201 - - [05 / May / 2012:17:05:14 -0700]&#34; GET / HTTP / 1.1&#34; 500 0 - &#34; Mozilla / 5.0(Windows NT 6.1; WOW64)AppleWebKit / 535.19(KHTML,如Gecko)Chrome / 18.0.1025.168 Safari / 535.19&#34; &#34; dcsnetlink-guestbook.appspot.com&#34; ms = 3096 cpu_ms = 1419 api_cpu_ms = 0 cpm_usd = 0.039468 loading_request = 1 instance = 00c61b117cd052a13542bd8aeb337bc0ae68268e W 2012-05-05 17:05:14.643 上下文启动失败com.google.apphosting.utils.jetty.RuntimeAppEngineWebAppContext@1a3b359 {/,/ base / data / home / apps / s~dcsnetlink-guestbook / 1.358537445667406021} org.mortbay.util.MultiException [java.lang.UnsupportedClassVersionError:guestbook / GuestbookServlet:Unsupported major.minor version 51.0,java.lang.UnsupportedClassVersionError:guestbook / SignGuestbookServlet:Unsupported major.minor version 51.0]     在org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:656)     在org.mortbay.jetty.servlet.Context.startContext(Context.java:140)     at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1250)     在org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:517)     在org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:467)     在org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)     在com.google.apphosting.runtime.jetty.AppVersionHandlerMap.createHandler(AppVersionHandlerMap.java:202)     在com.google.apphosting.runtime.jetty.AppVersionHandlerMap.getHandler(AppVersionHandlerMap.java:171)     在com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceRequest(JettyServletEngineAdapter.java:123)     在com.google.apphosting.runtime.JavaRuntime $ RequestRunnable.run(JavaRuntime.java:446)     在com.google.tracing.TraceContext $ TraceContextRunnable.runInContext(TraceContext.java:449)     在com.google.tracing.TraceContext $ TraceContextRunnable $ 1.run(TraceContext.java:455)     在com.google.tracing.TraceContext.runInContext(TraceContext.java:695)     在com.google.tracing.TraceContext $ AbstractTraceContextCallback.runInInheritedContextNoUnref(TraceContext.java:333)     在com.google.tracing.TraceContext $ AbstractTraceContextCallback.runInInheritedContext(TraceContext.java:325)     在com.google.tracing.TraceContext $ TraceContextRunnable.run(TraceContext.java:453)     在com.google.apphosting.runtime.ThreadGroupPool $ PoolEntry.run(ThreadGroupPool.java:251)     在java.lang.Thread.run(Thread.java:679) java.lang.UnsupportedClassVersionError:guestbook / GuestbookServlet:不支持的major.minor版本51.0     在com.google.appengine.runtime.Request.process-2dd9d02a5e2a506c(Request.java)     at java.lang.ClassLoader.defineClass1(Native Method)     at java.lang.ClassLoader.defineClass(ClassLoader.java:634)     at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)     at java.net.URLClassLoader.defineClass(URLClassLoader.java:277)     at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source)     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)     在java.lang.reflect.Method.invoke(Method.java:616)     at java.lang.ClassLoader.loadClass(ClassLoader.java:266)     在org.mortbay.util.Loader.loadClass(Loader.java:91)     在org.mortbay.util.Loader.loadClass(Loader.java:71)     在org.mortbay.jetty.servlet.Holder.doStart(Holder.java:73)     在org.mortbay.jetty.servlet.ServletHolder.doStart(ServletHolder.java:242)     在org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)     在org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:685)     在org.mortbay.jetty.servlet.Context.startContext(Context.java:140)     at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1250)     在org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:517)     在org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:467)     在org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)     在com.google.tracing.TraceContext $ TraceContextRunnable.runInContext(TraceContext.java:449)     在com.google.tracing.TraceContext $ TraceContextRunnable $ 1.run(TraceContext.java:455)     在com.google.tracing.TraceContext.runInContext(TraceContext.java:695)     在com.google.tracing.TraceContext $ AbstractTraceContextCallback.runInInheritedContextNoUnref(TraceContext.java:333)     在com.google.tracing.TraceContext $ AbstractTraceContextCallback.runInInheritedContext(TraceContext.java:325)     在com.google.tracing.TraceContext $ TraceContextRunnable.run(TraceContext.java:453)     在java.lang.Thread.run(Thread.java:679) java.lang.UnsupportedClassVersionError:guestbook / SignGuestbookServlet:不支持的major.minor版本51.0     在com.google.appengine.runtime.Request.process-2dd9d02a5e2a506c(Request.java)     at java.lang.ClassLoader.defineClass1(Native Method)     at java.lang.ClassLoader.defineClass(ClassLoader.java:634)     at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)     at java.net.URLClassLoader.defineClass(URLClassLoader.java:277)     at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source)     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)     在java.lang.reflect.Method.invoke(Method.java:616)     at java.lang.ClassLoader.loadClass(ClassLoader.java:266)     在org.mortbay.util.Loader.loadClass(Loader.java:91)     在org.mortbay.util.Loader.loadClass(Loader.java:71)     在org.mortbay.jetty.servlet.Holder.doStart(Holder.java:73)     在org.mortbay.jetty.servlet.ServletHolder.doStart(ServletHolder.java:242)     在org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)     在org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:685)     在org.mortbay.jetty.servlet.Context.startContext(Context.java:140)     at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1250)     在org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:517)     在org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:467)     在org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)     在com.google.tracing.TraceContext $ TraceContextRunnable.runInContext(TraceContext.java:449)     在com.google.tracing.TraceContext $ TraceContextRunnable $ 1.run(TraceContext.java:455)     在com.google.tracing.TraceContext.runInContext(TraceContext.java:695)     在com.google.tracing.TraceContext $ AbstractTraceContextCallback.runInInheritedContextNoUnref(TraceContext.java:333)     在com.google.tracing.TraceContext $ AbstractTraceContextCallback.runInInheritedContext(TraceContext.java:325)     在com.google.tracing.TraceContext $ TraceContextRunnable.run(TraceContext.java:453)     在java.lang.Thread.run(Thread.java:679) C 2012-05-05 17:05:14.720 来自servlet的未捕获异常 javax.servlet.UnavailableException:初始化失败。     在com.google.apphosting.runtime.jetty.AppVersionHandlerMap.createHandler(AppVersionHandlerMap.java:211)     在com.google.apphosting.runtime.jetty.AppVersionHandlerMap.getHandler(AppVersionHandlerMap.java:171)     在com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceRequest(JettyServletEngineAdapter.java:123)     在com.google.apphosting.runtime.JavaRuntime $ RequestRunnable.run(JavaRuntime.java:446)     在com.google.tracing.TraceContext $ TraceContextRunnable.runInContext(TraceContext.java:449)     在com.google.tracing.TraceContext $ TraceContextRunnable $ 1.run(TraceContext.java:455)     在com.google.tracing.TraceContext.runInContext(TraceContext.java:695)     在com.google.tracing.TraceContext $ AbstractTraceContextCallback.runInInheritedContextNoUnref(TraceContext.java:333)     在com.google.tracing.TraceContext $ AbstractTraceContextCallback.runInInheritedContext(TraceContext.java:325)     在com.google.tracing.TraceContext $ TraceContextRunnable.run(TraceContext.java:453)     在com.google.apphosting.runtime.ThreadGroupPool $ PoolEntry.run(ThreadGroupPool.java:251)     在java.lang.Thread.run(Thread.java:679) 我2012-05-05 17:05:14.725 此请求导致为您的应用程序启动新进程,从而导致您的应用程序代码首次加载。因此,此请求可能需要更长的时间,并且使用的CPU比典型的应用程序请求更多。

谢谢, 塞缪尔

2 个答案:

答案 0 :(得分:0)

  

java.lang.UnsupportedClassVersionError:guestbook / GuestbookServlet:   不支持的major.minor版本51.0

这是因为您使用JRE 1.7(jre7)

编译了java类

解决方案是:

  1. 将JDK降级为JDK6
  2. 更改项目“编译器合规级别” 到1.6。

答案 1 :(得分:0)

如果您使用的是Java 1.8,则必须使用Java 1.7重新编译。但是如果你有* .jsp文件,你也应该从系统中完全删除Java 1.8。如果你使用Mac,here就是你可以做到的。