2012-03-31 7 views
8

Właśnie zbudowałem przykładową aplikację, aby przetestować mechanizm aplikacji Google i funkcję zestawu narzędzi internetowych Google, korzystając z usługi RPC i silnika aplikacji Google z JDO. Usługa działa na poziomie lokalnym. Ale po wdrożeniu go do GAE i uruchomieniu, pokazuje mi błąd, jak mówi tytuł. Używam JRE7 do spełnienia wymagań aplikacji. Oto mój dziennik błędów:Rejestr błędów mechanizmu Google App Engine: nieobsługiwana wersja major.minor 51.0

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) 

Mój związek zastosowanie: http://jdodemo02.appspot.com/ Wszelkie sugestie proszę):

Odpowiedz

12

Kompilacja aplikacji Java SE 6. GAE nie obsługuje Java SE 7. Lokalnie działa ponieważ symulator GAE działa na bazie lokalnego JDK.

+1

Wew, w końcu to zrobiłem, dziękuję za wsparcie. W rzeczywistości, zmieniłem JRE6 na wcześniejszy projekt, nadal mam błąd, ponieważ zapomniałem zmienić JDK z 1.7 na 1.6 (JRE6 nie obsługuje JDK 1.7). Nadzieję, że ta pomoc dla kogoś, kto potrzebuje: 3 – ducnh

3

Jedną z rzeczy jest ustawienie środowiska JRE 6 na ścieżce kompilacji i kompilatorze. Nie zapomnij, że po utworzeniu projektu aplikacji sieci Web GAE przy użyciu innego środowiska JRE lub JDK zawsze sprawdź wersję Java w folderze org.eclipse.wst.common.project.facet.core.xml w folderze .

3

zamiast bezpośredniego edytowania org.eclipse.wst.common.project.facet.core.xml w swoim .settings folderu Będzie lepiej przeglądu w Eclipse jako mieszek

Kliknij prawym przyciskiem Twój projekt Eclipse

Wybierz Właściwości

Wybierz projektu "Oblicza" w lewym panelu

Wybierz wersję Javy odpowiednio

enter image description here

1

Walczyłem od wielu dni. Mam komputer Mac i potrzebuję użyć GCM do tworzenia aplikacji na Androida. Jedynym sposobem mogę dostać GAE pracy w Android Studio, a także kompatybilny z zainstalowanym JVM że miałam:

  • Install Homebrew.
  • Dostosuj go za pomocą Homebrew Cask (brew install caskroom/cask/brew-cask).
  • Zainstaluj Java, używając basków homebrew (brew cask install java).
  • Zainstaluj Android Studio, używając basków homebrew (brew cask install android-studio).
  • Zaktualizuj Studio do najnowszej wersji.
  • Przejdź do ustawień projektu w Studio i zmień docelowy JDK na taki, który został zainstalowany homebrew (1.8 znajduje się w/Library/Java/Home, który jest w rzeczywistości dowiązaniem symbolicznym).

Mam nadzieję, że nie wy, którzy biegliście tą samą ścieżką co ja, Po prostu nie wchodzę do Mordoru, To było 5 długich dni walki.