GAE:无法获得System Java Compiler。请使用JDK,而不是JRE

时间:2013-06-25 21:45:49

标签: google-app-engine

尝试将我的应用程序部署到Google App Engine服务器时,出现以下错误: 无法获得System Java Compiler。请使用JDK,而不是JRE。

我见过的所有解决方案都涉及编辑eclipse配置文件,但我没有使用eclipse。我正在从dos提示符执行appcfg.cmd。我安装了一个jdk,我的JAVA_HOME指向它: c:\ program files \ java \ jdk1.6.0_43

显然appcfg.cmd没有关注JAVA_HOME。它必须从其他地方获取JDK位置。

有什么想法吗?

2 个答案:

答案 0 :(得分:4)

如评论中所述:确保JDK在PATH中是第一位的。

答案 1 :(得分:0)

我对appengine sdk 1.8.1和sts 3.6.4也有同样的问题。

我尝试将vm属性添加到sts.ini文件,将%JAVA_HOME%添加到路径变量的开头。但是没有任何工作,因为我不断得到同样的错误。

Cannot get the System Java Compiler. Please use a JDK, not a JRE

然后我发现问题出在Windows \ system32 \ java *文件中。 appengine正在从Windows \ system32读取java。 有三个文件。

java.exe
javaw.exe
javaws.exe

我在JAVA JDK home中替换了这些文件,因为它们在安装过程中来自JAVA JRE home。在那之后,我重新启动了我的sts,一切正常,因为我能够毫无问题地部署。