如何在IntelliJ中修复“不受支持的类文件主要版本60”?

我在 Ubuntu 中有一个 Gradle 项目。它是用 Java 14 编写的。我安装了 Java 14 JDK。当我从命令行构建它时,一切正常,但没有人想使用命令行!当我在 IntelliJ Idea 中打开它时,它会抛出一个错误:

* Where:
Initialization script '/tmp/ijmapper.gradle`

* What went wrong:
Could not compile initialization script '/tmp/ijmapper.gradle`.
> Startup failed:
General error during semantic analysis: Unsupported class file major version 60.

紧随其后的是一段长而无用的堆栈跟踪,其中说了很多关于 Groovy 的信息。(该项目不是 Groovy 项目;它是一个 Java 项目。)

主要版本 60 指的是 Java 16,该项目未使用该版本。我已经进入项目结构并确保它设置为使用 JDK 版本 14。但名称“ijmapper”表明这与 IntelliJ 有关系,这可能是 IDE 问题而不是项目问题。

映射器文件只是说:

if(!ext.has('mapPath')) ext.mapPath = { path -> path}

换句话说,一个简单的 polyfill。

有谁知道这里发生了什么以及如何解决它?我已经浪费了一天的时间来尝试让它发挥作用,我快到这里了!

回答

我通过更改 IntelliJ 设置中的 Gradle JVM 设置解决了这个问题:

  • 设置/首选项对话框中,转到构建、执行、部署 | 构建工具 | 摇篮

  • Gradle部分下,更改Gradle JVM选项。

见https://www.jetbrains.com/help/idea/gradle-jvm-selection.html#jvm_settings

  • Mentioning what setting worked for you and hat you had previously would help.

回答

对我来说,通过升级 Gradle 版本来修复。

在目录下的文件中gradle/wrapper/gradle-wrapper.properties,修改gradle的版本号即可。例如,如果您的 gradle 版本是6.3,请更改以下内容:

distributionUrl=https://services.gradle.org/distributions/gradle-6.3-bin.zip

到:

distributionUrl=https://services.gradle.org/distributions/gradle-7.0-bin.zip

不适File -> Project Structure -> Project用于我正在处理的项目。


回答

将 Gradle 版本 6.8.3 升级到 7.0 解决了我的问题。你可以升级它

  • 文件 -> 项目结构 -> 项目(在左侧面板上)
  • 更改 Gradle 版本 7.0

它适用于 Android Gradle 插件版本 4.2.0


回答

对我来说,(在Flutter 中)问题是我使用的是 Java JDK version 16,但某些软件包不支持version 16 。

所以,我降级到 JDK 版本15

在 Windows 上,我执行了以下操作:

  1. 关闭您当前的 IDE/终端(不要跳过此步骤)。

  2. 卸载当前的 Java JDK 并重新启动计算机。

  3. 从这里下载并安装 Java JDK 版本 15 (您需要创建一个帐户才能下载)。

  4. 更新JAVA_HOME环境变量。


以上是如何在IntelliJ中修复“不受支持的类文件主要版本60”?的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>