我在尝试部署到 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:\Users\Chloe\AppData\Local\Temp ppengine-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 Clipse-kepler-4.3 Clipse.ini-vm
C:\Program Files\Java\jdk1.7.0_17\bin\javaw.exe
在顶部和 -vmargs 之前。
转到安装了 Eclipse 的 Eclipse 文件夹(例如 c:clipse)。您将找到 eclipse 在启动时使用的 eclipse.ini 文件。 添加以下行 -vm C:\Program Files\Java\jdk1.7.0_25 in\javaw.exe
将上面的 java 路径更改为您的 JDK 位置。它应该能够使用这个 JDK 并将编译并部署到应用程序引擎。
就我而言,我试图
File>Restart
Eclipse 但在退出并再次运行时不起作用它可以工作
我看到OP正在使用Google Plugin for Eclipse(GPE),该插件已被弃用,但这也曾经是Cloud Tools for Eclipse(CT4E)中的问题,因此我将在这里留下CT4E的相关答案以供参考。
确实是 Cloud Tools for Eclipse 的一个 bug,它没有使用为项目配置的 JDK,而是使用启动 Eclipse 进行暂存时使用的 JDK。该错误已修复:https://github.com/GoogleCloudPlatform/google-cloud-eclipse/issues/2195。
因此,其他人在此问题中的答案是编辑
eclipse.ini
以更改JDK以启动Eclipse,这是不再需要的临时解决方法。只需更新到最新的 CT4E 版本并为项目设置 JDK 即可。您可以在 eclipse.ini
中指定启动 Eclipse 所需的任何 JDK/JRE。