java - 无法使用可执行 C :\Program Files\Java\jdk-10. 0.1\bin\java.exe 确定 Java 版本

标签 java intellij-idea

无法使用可执行文件 C:\Program Files\Java\jdk-10.0.1\bin\java.exe 确定 Java 版本。

当我尝试使用 Gradle 在 IntelliJ IDEA 版本 2018.1.2 中创建新项目时出现此错误。它说:

sync failed: Could not determine Java version using executable C:\Program Files\Java\jdk-10.0.1\bin\java.exe

===================

我通过卸载 jdk 10 并安装 jdk8 解决了这个问题。

最佳答案

对于 JDK 10,您将需要在 IntelliJ IDEA 中默认不使用的 Gradle 4.7+(当前版本 IntelliJ IDEA 2018.1.4)。

要解决此问题,请为您的操作系统安装最新的 Gradle (Install guide)。对于 MacOS,您可以使用 Homebrew:

brew install gradle

转到您的项目目录:

cd ~/path/to/your/project/

使用您安装的版本(在我的例子中是 4.8)生成 Gradle Wrapper 脚本:

gradle wrapper --gradle-version 4.8

此命令将下载 Gradle 4.8,为您当前的项目创建脚本 gradlew 和 gradlew.bat。从这一点开始,您应该在命令行中使用这些脚本。

下一步,是确保 IntelliJ IDEA 使用这些,而不是内置的 Gradle 分发,您可以通过打开 IntelliJ 首选项并搜索“gradle”来做到这一点(这将在“构建、执行、部署/构建工具/Gradle”)。

在这部分的设置中选择:

选择“使用 gradle ‘wrapper’ 任务配置”

应用更改,按确定并重新构建(重新同步)Gradle,一切都应该没问题。我希望这会有所帮助。

关于java - 无法使用可执行 C :\Program Files\Java\jdk-10. 0.1\bin\java.exe 确定 Java 版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50121333/

相关文章:

java - 在 ClientInterceptor 上使用 grpc-java 在元数据中包含消息哈希?

java - 将json解析为Gson中的字符串

java - JetBrains IntelliJ Error launching Intellij Platform - Error invoking main 方法

java - Intellij 缺少 Java 语法突出显示

java - IntelliJ Spring Gradle "Run all tests"不工作(单个测试运行良好)

java - FragmentStatePagerAdapter、childFragmentManager 和方向更改组合不好?

java - 使用一个 "catch all"setter 或 getter 时避免额外方法参数的设计模式?

java - 我不能使用 .properties "override"@NotEmpty 消息

scala - 为什么 IntelliJ 在以编程方式实现方法 stub 时默认覆盖每个方法?

java - 如何将多个步骤目录粘合到 Intellij 中的 cucumber 测试?