首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GAE Java入门,Eclipse Indigo -无法编译为1.6

GAE Java入门,Eclipse Indigo -无法编译为1.6
EN

Stack Overflow用户
提问于 2012-05-22 09:20:00
回答 3查看 4.3K关注 0票数 2

我觉得我在这个问题上一直在绕圈。我遵循了Eclipse中的Google App Engine (https://developers.google.com/appengine/docs/java/gettingstarted/)入门指南,在我将其上传到App Engine之前,一切都进行得相当顺利。

我收到了500个错误,所以我检查了日志,发现了这个:"guestbook/SignGuestbookServlet : Unsupported major.minor version 51.0]“

然后我搜索这个问题(当然是在堆栈溢出上),找到了这个解决方案:Google App Engine and Java Version?

因此,我将遵从性级别设置为1.6,然后在对话框的底部收到警告:“选择1.6遵从性时,请确保安装并激活了兼容的JRE (当前为1.7)”。

我很高兴地单击了OK,然后它会提示重新构建。在重新构建之后,我得到了这个新的错误:"Java编译器级别与安装的Java项目facet的版本不匹配。“

在没有有意使用项目中的任何方面的情况下,我搜索了一些帮助(同样在stackoverflow上),并找到了以下内容:"Faceted Project Prblem (Java Version Mismatch)" error message

不幸的是,它甚至没有帮助,因为我不使用Maven,并且当我打开项目的属性时,没有项目属性->项目方面面板可供我更改版本。

因此,我似乎遇到了一些无法在Eclipse中编译或无法部署到App Engine中的问题。我知道我可能在这里遗漏了一些明显的东西,但我不能完全指出它。

更新:我卸载了所有JRE和JDK,只重新安装了jdk1.6.0_32。问题仍然是一样的。

EN

回答 3

Stack Overflow用户

发布于 2012-08-26 04:07:40

我也有同样的问题。我能够通过使用Navigator视图和编辑.settings/org.eclipse.wst.common.project.facet.core.xml,来解决问题,更改为:

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<faceted-project>
  <installed facet="java" version="1.6"/>
</faceted-project>

在此更改之后,错误消失了,我可以使用jre1.7和java1.6兼容级别在DevMode中成功运行GWT项目。

似乎确实应该有一种方法可以通过项目配置来编辑这个java facet,但我在Juno中找不到它。

票数 7
EN

Stack Overflow用户

发布于 2012-05-23 13:39:16

答案似乎是,如果在创建Web应用程序时将Eclipse默认编译器级别设置为1.7,那么就不能成功地将其切换到1.6。

示例1:使用JRE1.6的

eclipse set Preferences->Java->Installed JRE to jdk

  1. 1.6.0_32
  2. Set Preferences->Java->Compiler to compliance level 1.6
  3. 使用谷歌插件创建"New Web Application"
  4. Run it locally success
  5. Deploy to app engine,
    1. -

示例2:使用JRE1.7的

eclipse set Preferences中的

  1. -> Java -> installed JRE to jdk 1.7.0_04
  2. Set Preferences->Java->Compiler to compliance level 1.7
  3. 使用谷歌插件创建"New Web Application"
  4. Run it locally success
  5. Upload to app engine - failure (Unsupported major.minor version 51.0)
  6. In eclipse set Preferences->Java->Compiler to compliance level 1.6 -> failure (不会本地编译(Java编译器级别与已安装Java项目方面的版本不匹配)。

<代码>G229

解决方案:

在使用google插件创建Web应用程序之前,将JRE和编译器级别切换为1.6 (如示例1所示)。

如果你的项目已经存在,那么希望你不会走得太远,可以重新创建它。

票数 2
EN

Stack Overflow用户

发布于 2012-10-15 16:40:12

在与这个问题斗争了几个小时之后,删除war文件夹中的nocache.js是最后一块拼图。

与上面的答案相反,在1.7中创建应用程序后,我能够成功地降级到合规性级别1.6

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10694648

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档