[英]How to switch from Java 7 to Java 6 in Eclipse for Google App Engine?
我已经使用Google Web Toolkit开发了一个小型应用程序,并希望将其部署到Google App Engine(GAE)服务器。 我默认使用Eclipse Juno和Java 7,但是当我尝试部署到GAE时,我意识到它还不支持Java 7。 因此,我在项目设置中切换到Java 6 JRE(将Build Path / Libraries设置为“ java-6-openjdk-amd64”,并将Java Compiler / Compiler遵从级别设置为1.6。
但是,当我尝试通过Google Eclipse插件部署应用程序时,它仍会抛出相同的RuntimeException:
“该应用程序包含Java 7类,但未设置--use_java7标志。”
这是完整的调试输出:
Unable to update:
java.lang.RuntimeException: The application contains Java 7 classes, but the --use_java7 flag has not been set.
at com.google.appengine.tools.admin.Application.createStagingDirectory(Application.java:576)
at com.google.appengine.tools.admin.AppAdminImpl.doUpdate(AppAdminImpl.java:370)
at com.google.appengine.tools.admin.AppAdminImpl.update(AppAdminImpl.java:53)
at com.google.appengine.eclipse.core.proxy.AppEngineBridgeImpl.deploy(AppEngineBridgeImpl.java:433)
at com.google.appengine.eclipse.core.deploy.DeployProjectJob.runInWorkspace(DeployProjectJob.java:148)
at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:38)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53)
如何删除Java 7剩余部分,以便Google插件能够理解?
这些都在Ubuntu 12.10 64位上运行。
您可能正在使用Java 7安装进行编译。 在eclipse中,转到窗口>首选项 。 在其中,浏览至Java>已安装的JRE 。
在您的情况下,右侧的列表可能仅显示jre / jdk7。 您必须在此处添加Java 5或6的安装,并确保它是“选中的” JRE。
然后,使用“ 项目”>“清理...” ,选择“清理所有项目”,并确保选中“立即开始构建”以及“构建整个工作区”。
[编辑:此答案不适用于android开发...当我意识到这一点时,快速搜索显示该问题看起来可疑接近于由于未设置--use_java7标志而无法部署到Google App Engine ,答案是大概一样。]
我最终能提供帮助的唯一方法是在Eclipse中创建一个新项目,立即切换到Java 6(构建路径,编译器,Java facet),然后复制/粘贴上一个项目中的所有文件和GAE设置。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.