尝试部署到Google AppEngine时出现此错误。我选择了JDK!
------------ Deploying frontend ------------
Preparing to deploy:
Created staging directory at: 'C:\Users\Chloe\AppData\Local\Temp\appcfg8759974391667459604.tmp'
Scanning for jsp files.
Compiling jsp files.
java.lang.RuntimeException: Cannot get the System Java Compiler. Please use a JDK, not a JRE.
Debugging information may be found in C:\Users\Chloe\AppData\Local\Temp\appengine-deploy6465203991005024943.log
C:\用户\小克\应用程序数据\本地\ TEMP \ AppEngine上-deploy6465203991005024943.log:
Unable to update:
java.lang.RuntimeException: Cannot get the System Java Compiler. Please use a JDK, not a JRE.
at com.google.appengine.tools.admin.Application.compileJavaFiles(Application.java:814)
at com.google.appengine.tools.admin.Application.compileJsps(Application.java:801)
at com.google.appengine.tools.admin.Application.createStagingDirectory(Application.java:615)
at com.google.appengine.tools.admin.AppAdminImpl.doUpdate(AppAdminImpl.java:418)
at com.google.appengine.tools.admin.AppAdminImpl.update(AppAdminImpl.java:55)
at com.google.appengine.eclipse.core.proxy.AppEngineBridgeImpl.deploy(AppEngineBridgeImpl.java:433)
at com.google.appengine.eclipse.core.deploy.DeployProjectJob.runInWorkspace(DeployProjectJob.java:155)
at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:38)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53)
我已经清理了项目,将Eclipse重新安装到最新版本,重新安装了所有插件等。我还编辑了Program Files \ Java \ eclipse-kepler-4.3 \ eclipse.ini
-vm
C:\Program Files\Java\jdk1.7.0_17\bin\javaw.exe
在顶部和之前的-vmargs。
答案 0 :(得分:7)
转到安装了eclipse的Eclipse文件夹(比如c:\ eclipse)。你会发现eclipse在启动时使用的eclipse.ini文件。 添加以下行 -vm C:\ Program Files \ Java \ jdk1.7.0_25 \ bin \ javaw.exe
使用您的JDK位置更改上述java路径。它应该能够使用这个JDK,并将编译和部署到app引擎。
答案 1 :(得分:1)
在我的情况下,我试图File>Restart
Eclipse,但在退出时不能正常工作并再次运行它的工作原理
答案 2 :(得分:0)
WOW !!! 我正在处理这个问题3-4个小时。正要评论说他妈的这个。但后来我将eclipse.ini改为:
-vm
A:/Programming/Java/jdk1.8.0_73/bin/javaw.exe
而不是:
-vm
A:/Programming/Java/jdk1.7.0_79/bin/javaw.exe
和成功!
为什么这可能有效?不太确定。我需要1.7而不是1.8 ......但1.7一直指向JRE而不是JDK ...而且令人惊讶的是1.8没有这样做+仍然使用当前版本。另外值得一提的是在facet / build path&中指定1.7。编译器..
答案 3 :(得分:0)
我看到OP正在使用谷歌插件Eclipse(GPE),这是不推荐使用的,但这曾经是Cloud Tools for Eclipse(CT4E)中的一个问题,因此我将为CT4E留下相关答案在此供参考。
确实是Cloud Tools for Eclipse的一个错误,它没有使用为项目配置的JDK,而是使用JDK用于启动Eclipse进行分段。该错误已得到修复:https://github.com/GoogleCloudPlatform/google-cloud-eclipse/issues/2195。
因此,其他人在此问题中回答编辑eclipse.ini
以更改JDK以启动Eclipse是一种不再需要的临时解决方法。只需更新到最新的CT4E版本并为项目设置JDK。您可以在eclipse.ini
中指定启动Eclipse所需的JDK / JRE。