繁体   English   中英

如何在Eclipse for Google App Engine中从Java 7切换到Java 6?

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM