我正在尝试为桌面游戏设置 libgdx,当我尝试生成项目时出现此错误并且构建失败。 我有最新版本的 Java(13.0.2) 和 Gradle(6.6),两者都设置为路径中的环境变量。有人可以帮助我吗?
错误看起来像这样:
Could not compile settings file 'C:\Users\noemi\Desktop\Test\settings.gradle'.
> startup failed:
General error during semantic analysis: Unsupported class file major version 57
java.lang.IllegalArgumentException: Unsupported class file major version 57
这不是 LibGDX 问题。 Gradle 5 与 Java 13 不兼容。您需要将 Gradle(项目中的包装版本)更新到 Gradle 6 或更高版本,或者需要使用较低版本的 JRE。
要更新包装的 gradle,请转到项目中的
gradle/wrapper/gradle-wrapper-properties
并更新版本号。我正在使用6.1.1。
distributionUrl=https\://services.gradle.org/distributions/gradle-6.1.1-all.zip
如果您有较旧的 LibGDX 项目,则可能需要修改
build.gradle
模块中的 android
文件才能与 Gradle 6 兼容。您可以复制粘贴以将 copyAndroidNatives
任务替换为 此处的任务 .
启动失败: 语义分析期间的一般错误:不支持的类文件主要版本 61
如何解决此反应本机问题 JAVA JDK 17
进入你的react-native项目的android/目录
使用以下行创建一个名为 local.properties 的文件:
sdk.dir=C:\Android\sdk
后藤 android\gradle\wrapper\gradle-wrapper.properties
改变
distributionUrl=https://services.gradle.org/distributions/gradle-6.7-all.zip
致
distributionUrl=https://services.gradle.org/distributions/gradle-7.3-all.zip
转到
android\gradle.properties 添加这一行
org.gradle.jvmargs=-Xmx1536M --add-exports=java.base/sun.nio.ch=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.reflect=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-exports=jdk.unsupported/sun.misc=ALL-UNNAMED
当我运行 2 年前编写的旧
Flutter
项目时,出现了这个问题。我认为 Android 项目也会以同样的方式修复。我正在使用 MacOS
和 Android Studio Bumblebee
。
首先,需要移动到
android
文件夹并检查gradle版本:
cd android
./gradlew --version
显示Gradle版本
6.7.1
,需要注意JVM行,我的JDK版本是15.0.2。对于这个项目来说太新了。所以你必须downgrading
从打开的jdk版本到旧版本或者upgrade
gradle/wrapper/gradle-wrapper.properties
中的Gradle版本到新版本。
如果您降级JDK版本,可以从this下载。就我而言,我从 Java SE 15 降级到 Java SE 11。
我打开Android的Flutter项目后
转到
Preferences->Build, Execution, Deployment → Build Tools → Gradle →
并选择 JDK 版本 11。
转到“构建”->“清理项目”->“重建项目”。
转到
Terminal
运行java --version
,如果仍然显示JE版本15那么你必须先设置JAVA_HOME。
您只需将以下内容添加到您的
.bash_profile
或 .zshrc
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-11.0.15.jdk/Contents/Home
保存并转到
android
文件夹并再次运行
./gradlew --version
它将正确显示 JDK 版本 11。
最后,运行
flutter run
。
我降级了 gradle 文件,这就是为什么会发生这个错误,所以最后我必须更改 Gradle 包装文件
distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-all.zip
到
distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-all.zip
如果您使用的是 Eclipse,请转到
Eclipse > Preferences > Gradle
更新
Java home
以指向 Java 主位置
使用以下链接检查 gradle 版本和捆绑版本 链接 https://developer.android.com/studio/releases/gradle-plugin#updating-gradle
如果要升级 android/gradle/build.gradle 更改依赖项 classpath 'com.android.tools.build:gradle:[最新版本]'
Java(13.0.2) 和 Gradle(6.6) 不兼容。
您可以:
JAVA_HOME
gradle/wrapper/gradle-wrapper.properties
中,将行更改为 distributionUrl=https\://services.gradle.org/distributions/gradle-6.0.1-bin.zip
。 可用的 Gradle 发行版如何知道兼容版本?
检查此https://docs.gradle.org/current/userguide/compatibility.html
Java版本 | 第一个支持它的 Gradle 版本 |
---|---|
8 | 2.0 |
9 | 4.3 |
10 | 4.7 |
11 | 5.0 |
12 | 5.4 |
13 | 6.0 |
14 | 6.3 |
15 | 6.7 |
16 | 7.0 |
17 | 7.3 |
18 | 7.5 |
19 | 7.6 |
20 | 8.1⚠ |