使用Cordova构建Android应用失败,寻求解决方案
Cordova Android构建失败解决方案
错误场景1:Unsupported class file major version 65
C:\Users\Me\Library>cordova build android 检查Java JDK和Android SDK版本 ANDROID_HOME=C:\Users\Me\AppData\Local\Android\Sdk (推荐设置) ANDROID_SDK_ROOT=C:\Users\Me\AppData\Local\Android\Sdk (已废弃) 使用Android SDK: C:\Users\Me\AppData\Local\Android\Sdk 启动Gradle守护进程(后续构建将更快) 此构建使用了已废弃的Gradle特性,与Gradle 9.0不兼容。 您可以使用'--warning-mode all'查看单独的废弃警告,确定它们来自您自己的脚本还是插件。 构建成功,耗时34秒 1个可执行任务:1个已执行 子项目路径: CordovaLib 子项目路径: app 启动Gradle守护进程(后续构建将更快) 失败:构建因异常终止。 - 错误原因: 无法为设置文件'C:\Users\Me\Library\platforms\android\settings.gradle'打开设置通用类缓存(路径:C:\Users\Me.gradle\caches\7.6\scripts\dqjrgsw17c62wbpoagod92e1e)。 > BUG! 在源单元'_BuildScript_'的'semantic analysis'阶段发生异常:Unsupported class file major version 65 - 建议操作: > 使用--stacktrace选项获取堆栈跟踪。 使用--info或--debug选项获取更多日志输出。 使用--scan选项获取完整洞察。 此构建使用了已废弃的Gradle特性,与Gradle 8.0不兼容。 您可以使用'--warning-mode all'查看单独的废弃警告,确定它们来自您自己的脚本还是插件。 构建失败,耗时13秒 命令执行失败,退出代码1: C:\Users\Me\Library\platforms\android\gradlew -b C:\Users\Me\Library\platforms\android\build.gradle cdvBuildDebug
错误场景2:无法找到或加载主类org.gradle.wrapper.GradleWrapperMain
C:\Users\Me\Library>cordova build android 检查Java JDK和Android SDK版本 ANDROID_HOME=C:\Users\Alim\AppData\Local\Android\Sdk (推荐设置) ANDROID_SDK_ROOT=C:\Users\Me\AppData\Local\Android\Sdk (已废弃) 使用Android SDK: C:\Users\Me\AppData\Local\Android\Sdk 子项目路径: CordovaLib 子项目路径: app 错误:无法找到或加载主类org.gradle.wrapper.GradleWrapperMain 原因:java.lang.ClassNotFoundException: org.gradle.wrapper.GradleWrapperMain 命令执行失败,退出代码1: C:\Users\Me\Library\platforms\android\gradlew -b C:\Users\Me\Library\platforms\android\build.gradle cdvBuildDebug
解决方案
针对错误1:Unsupported class file major version 65
该错误核心是Java版本与Gradle版本不兼容:
- Class file major version 65对应Java 21,而Gradle 7.6仅支持Java 8-17,版本不匹配导致解析失败。
解决步骤:
- 检查本地Java版本:
java -version - 选择兼容的版本组合:
- 若保留Gradle 7.6:将Java降级到11或17版本
- 若保留Java 21:升级项目Gradle版本到8.0+,同时确保Cordova Android平台版本≥12.0.0(该版本开始支持高版本Gradle)
- 修改项目Gradle版本:
打开platforms/android/gradle/wrapper/gradle-wrapper.properties,更新distributionUrl为目标版本,例如:distributionUrl=https\://services.gradle.org/distributions/gradle-8.4-all.zip - 清理Gradle缓存:
rd /s /q C:\Users\Me\.gradle\caches
针对错误2:无法找到或加载主类org.gradle.wrapper.GradleWrapperMain
该错误是Gradle Wrapper文件损坏或缺失导致的,解决步骤:
- 重新生成Gradle Wrapper:
进入platforms/android目录执行:
(替换8.4为你选择的兼容版本)gradle wrapper --gradle-version 8.4 - 重置Android平台:
(版本号可根据Java/Gradle兼容性调整)cordova platform remove android cordova platform add android@12.0.0 - 检查
gradlew脚本完整性,若缺失可替换为对应Gradle版本的官方Wrapper文件。
通用排查步骤
- 确认环境变量配置:
JAVA_HOME指向正确的JDK目录(如C:\Program Files\Java\jdk-17.0.9)- 确保
JAVA_HOME\bin在系统PATH中
- 清理项目构建缓存:
cordova clean android - 更新Cordova插件版本:
cordova plugin update
内容的提问来源于stack exchange,提问作者Unanimous
相关产品推荐
相关产品推荐

