使用Ionic Angular执行cordova build android --release时遇版本63错误,如何解决?
Cordova构建Android Release包失败解决方案
错误场景
执行cordova build android --release时出现构建失败,核心错误日志如下:
PS C:\Users\Nirali\Documents\nmhapp> cordova build android --release 正在检查Java JDK和Android SDK版本 ANDROID_SDK_ROOT=C:\Users\Nirali\AppData\Local\Android\Sdk(推荐配置) ANDROID_HOME=C:\Users\Nirali\AppData\Local\Android\Sdk(已废弃) 使用的Android SDK:C:\Users\Nirali\AppData\Local\Android\Sdk FAILURE: 构建失败,出现异常。 - 错误原因: 无法打开设置文件'C:\Users\Nirali\Documents\nmhapp\platforms\android\settings.gradle'的通用类缓存(路径:C:\Users\Nirali.gradle\caches\7.5.1\scripts\7e15adv812akcxkuh6ist7or8)。 > BUG! exception in phase 'semantic analysis' in source unit '_BuildScript_' Unsupported class file major version 63 - 建议尝试: > 使用--stacktrace选项获取堆栈跟踪信息。 > 使用--info或--debug选项获取更多日志输出。 > 使用--scan选项获取完整分析信息。 - 获取更多帮助:https://help.gradle.org 构建中使用了已废弃的Gradle特性,导致其与Gradle 8.0不兼容。 你可以使用'--warning-mode all'查看单个废弃警告,以确定它们来自你自己的脚本还是插件。 请参阅:https://docs.gradle.org/7.5.1/userguide/command_line_interface.html#sec:command_line_warnings BUILD FAILED in 771ms 命令执行失败,退出代码1:C:\ProgramData\chocolatey\bin\gradle.EXE -p C:\Users\Nirali\Documents\nmhapp\platforms\android wrapper -b C:\Users\Nirali\Documents\nmhapp\platforms\android\wrapper.gradle PS C:\Users\Nirali\Documents\nmhapp>
核心原因
Unsupported class file major version 63表示当前使用的Java版本(Java 19,对应版本号63)与项目依赖的Gradle版本(7.5.1)不兼容——Gradle 7.5.1最高仅支持Java 17。
解决方案
方案1:降级Java版本到17
- 卸载当前的Java 19,下载并安装Java 17正式版本
- 配置系统环境变量
JAVA_HOME,指向Java 17的安装目录(例如C:\Program Files\Java\jdk-17.x.x) - 在命令行执行
java -version,确认输出显示Java 17的版本信息 - 重新执行
cordova build android --release
方案2:升级Gradle版本以支持Java 19
- 进入项目的
platforms/android目录 - 打开
gradle/wrapper/gradle-wrapper.properties文件,修改distributionUrl字段为支持Java 19的Gradle版本,例如:distributionUrl=https\://services.gradle.org/distributions/gradle-7.6-bin.zip - 保存文件后,重新执行
cordova build android --release
方案3:同步Cordova Android平台版本(可选)
如果选择升级Gradle到8.x版本,需要确保Cordova Android平台版本兼容(例如Cordova Android 12.0.0+),执行以下命令升级平台:
cordova platform update android@12.0.0
内容的提问来源于stack exchange,提问作者Dinesh Kumar
相关产品推荐
相关产品推荐

