Java 7 support for Google App Engine Java
-
14-06-2021 - |
문제
The Google App Engine Java overview page indicates that the Java versions 5 and 6 are supported. When starting the local development server with Java 7u4 the following error bubbles up:
#
# A fatal error has been detected by the Java Runtime Environment:
#
# SIGBUS (0xa) at pc=0x000000010d733a96, pid=32766, tid=140735250205024
#
# JRE version: 7.0_04-b21
# Java VM: Java HotSpot(TM) 64-Bit Server VM (23.0-b21 mixed mode bsd-amd64 compressed oops)
# Problematic frame:
# J com.google.appengine.repackaged.org.objectweb.asm.MethodWriter.visitInsn(I)V
#
For more information please refer to the output and the thread dump.
Is there any known issue with this particular Java 7 version? Is there going to be full Java 7 support for GAE Java on the roadmap?
해결책
Is there any known issue with this particular Java 7 version?
We're well aware of Java 1.7 issues.
Is there going to be full Java 7 support for GAE Java on the roadmap?
Until we've made some official announcement, we have to ask for patience.
다른 팁
As of AppEngine 1.7.7, support has been added for Java 7.
http://googleappengine.blogspot.ca/2013/04/app-engine-177-released.html
Is there any known issue with this particular Java 7 version?
Well, as you stated it's not supported.
Also, this 2011 thread seems to reference a similar bug on OS X and announces a bugfix.
Is there going to be full Java 7 support for GAE Java on the roadmap?
Probably not for a rather long while.
You could, however, try to force the use of a 1.6 source format and a 1.6 target class format, in your Eclipse project (or whichever build system you use).
Further Reading:
- Is it possible to use Java 7 on GAE? (from the google-appengine-java mailing-list)
- Google App Engine and Java Version?
Here is what has been announced here on this recently:
Version 1.7.3 - October 23, 2012
We encourage you to try and test your application using Java 7 and the App Engine SDK. Note that Java 7 is not a supported runtime.
Java 7 Features that we encourage you to try in dev appserver:
Strings in switch
Binary integral literals and underscores in number literals
Multi-catch and more precise rethrow
Improved type inference for generic instance creation (diamond)
try-with-resources statement
Simplified varargs method invocation
Java 7 features that are NOT supported:
All new Java 7 classes (the Google App Engine whitelist has not been updated yet)
Method Handles
Invoke Dynamic bytecode