在 Intellij IDEA 14.1.4 中:无法运行程序“C:/Program Files (x86)/Java/jdk1.8.0_45/bin/java”

问题描述 投票:0回答:8

我正在尝试在 IDEA 中运行基于 java 的 Play 2.0 应用程序,但在编译时,我收到此错误:

信息:内部缓存已损坏或格式过时, 强制项目重建:模块“web-server”生产: java.io.IOException:无法运行程序“C:/Program Files (x86)/Java/jdk1.8.0_45/bin/java”(在目录中 “C:\Users\Documents\GitHub\web-server”): CreateProcess错误=267,目录名称无效

这发生在

ProcessBuilder.start()
动作期间。

我已确保所有路径变量都已正确设置,甚至更改它们以确保它们正常工作。让我想到这里的是,ProcessBuilder 似乎正在尝试使用正斜杠路径,但我正在 Windows 中运行。

我尝试从头开始重新加载我的项目,使缓存无效并重新启动,更新我的java安装(32位和64位),以及卸载并重新安装IDEA,但它似乎不起作用。同一个项目在另一台计算机上运行良好,所以我认为这可能是本地问题。任何帮助将不胜感激!

java intellij-idea playframework-2.0
8个回答
15
投票

我最近遇到了这个问题,我分两步解决了。

第 1 部分

如果你的路径JAVA_HOME没问题:

文件→设置→构建、执行、部署→构建工具→Maven→运行器

设置为“使用JAVA_HOME(...路径...)”

如果您设置的是固定字符串,以后重新更新时可能会再次出现该问题。无论如何,你可以做到。

第 2 部分

文件 → 其他设置 → 默认项目结构

检查所有选项卡并确保所有路径都指向新安装的JDK(如果您更改其中一个,那么您应该全部更改,例如我在Annotations中更改)

如果无法选择路径(错误:路径无效),尽量不要使用C:\Program Files (x86)\Java...\中的路径——选择C:\Program Files\Java中的路径。 ..\(或反之亦然)


3
投票

我也遇到了同样的问题,这是我解决的方法:

显然目录路径有问题。我的是“D:\IntelliJ Workspace\”,但在错误消息中它是“D:\IntelliJ+Workspace\”。当我删除目录名称中的空格时,错误已修复。

在您的情况下,“C:\Users\Documents\GitHub\web-server”有额外的反斜杠,因此当您修复此问题时,我认为您的错误将得到修复。


1
投票

存在同样的问题,因为包含项目的文件夹名称中包含空格。删除空格并重命名后完美运行。


1
投票

我也有类似的问题-

Cannot run program "E:\Java\jdk-17.0.2\bin\java.exe" (in directory with idea 14.1.4)

解决方案:
1.删除你的jdk
1.重新安装jdk。
2.然后再次构建您的项目并保存,运行它。


0
投票

我对想法 14.1.4 也有同样的问题。 将 Maven Runner 选项更改为 Use JAVA_HOME 会有所帮助。 设置 > Maven > 运行器 将 JRE 设置为使用 JAVA_HOME


0
投票

我从jdk1.7更改为jdk1.8.0_212并且它有效 但是在编译时我使用jdk 1.7,在运行时使用jdk1.8.0_212


0
投票

安装新的jdk版本后,我必须重新启动机器,如上所述,我使用文件→设置→构建、执行、部署→构建工具→Maven→运行器选择了正确的jdk。这对我有用。


0
投票

我想我的 Java 已经更新了。

转到文件 |项目结构| SDK 并检查您的 SDK

按照其他帖子中的建议,转到 File → Settings → Build, Execution, Deployment → Build Tools → Maven → Runner 并选择正确的 JDK。

来源:https://intellij-support.jetbrains.com/hc/en-us/community/posts/360009821700-Cannot-find-JDK-for-module

© www.soinside.com 2019 - 2024. All rights reserved.