Google应用引擎返回错误日志:不受支持的major.minor版本51.0

时间:2012-03-31 10:24:41

标签: google-app-engine gwt java-ee

我刚刚构建了一个示例应用程序来测试谷歌应用引擎和谷歌网络工具包功能,使用RPC服务和谷歌应用引擎与JDO。该服务适用于本地。但是在我将它部署到GAE并运行后,它会向我显示标题所示的错误。 我使用JRE7来编译应用程序。 这是我的错误日志:

Uncaught exception from servlet
java.lang.UnsupportedClassVersionError: com/gwt/myexample/server/EmployeeServiceImpl:
Unsupported major.minor version 51.0
at com.google.appengine.runtime.Request.process-e8c21a25e91f709f(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)
at java.lang.reflect.Method.invoke(Method.java:616)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
at org.mortbay.util.Loader.loadClass(Loader.java:91)
at org.mortbay.util.Loader.loadClass(Loader.java:71)
at org.mortbay.jetty.servlet.Holder.doStart(Holder.java:73)
at org.mortbay.jetty.servlet.ServletHolder.doStart(ServletHolder.java:242)
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 com.google.tracing.TraceContext$TraceContextRunnable.runInContext
 (TraceContext.java:449)
at com.google.tracing.TraceContext$TraceContextRunnable$1.run
 (TraceContext.java:455)
at com.google.tracing.TraceContext.runInContext(TraceContext.java:695)
at com.google.tracing.TraceContext$AbstractTraceContextCallback.
 runInInheritedContextNoUnref(TraceContext.java:333)
at com.google.tracing.TraceContext$AbstractTraceContextCallback.
 runInInheritedContext(TraceContext.java:325)
at com.google.tracing.TraceContext$TraceContextRunnable.run(TraceContext.java:453)
at java.lang.Thread.run(Thread.java:679)

我的申请链接:http://jdodemo02.appspot.com/ 任何建议请):

5 个答案:

答案 0 :(得分:13)

使用Java SE 6编译应用程序.GAE不支持Java SE 7.本地可行,因为GAE模拟器在本地JDK之上运行。

答案 1 :(得分:3)

有一件事是将JRE 6设置为Build Path和Compiler。 不要忘记,一旦使用不同的JRE或JDK创建了GAE Web应用程序项目,请始终检查org.eclipse.wst.common.project.facet.core.xml文件夹中.settings的java版本。

答案 2 :(得分:3)

而不是直接编辑 .settings 文件夹中的 org.eclipse.wst.common.project.facet.core.xml 最好在eclipse中查看它如吼叫

右键点击你的eclipse项目

选择属性

在左侧面板中选择“项目构面”

适当选择Java版本

enter image description here

答案 3 :(得分:1)

我已经打了好几天了。我有一台Mac,需要使用GCM开发Android应用程序。我可以让GAE在Android Studio中工作,并且与我安装的JVM兼容的唯一方法是:

  • 安装Homebrew
  • 使用Homebrew Caskbrew install caskroom/cask/brew-cask)自定义。
  • 使用自制软件包(brew cask install java)安装Java。
  • 使用自制软件包(brew cask install android-studio)安装Android Studio。
  • 将Studio更新到最新版本。
  • 转到Studio中项目的设置,将目标JDK更改为自制安装的JDK(1.8位于/ Library / Java / Home,实际上是符号链接)。

希望你们没有和我一样走路,只是没有人走进魔多,已经有5天的战斗了。

答案 4 :(得分:0)

要从Flashdevelop运行reactjs项目,您必须下载: 来自链接的谷歌编译器: https://developers.google.com/closure/compiler/ haxe编译器来自 http://haxe.org/download jave jre 7