You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无法构建Cordova Android项目:构建失败异常及环境检测报错求助

Cordova Android项目构建失败问题

问题背景

花费数小时尝试创建简单Cordova项目,安装完Java SDK、Gradle、Android Studio并配置环境变量后,仍无法完成构建流程。

操作步骤

  • cordova create Testproject com.example.hello Testproject
  • cd Testproject
  • cordova platform add android@10.1.1

报错信息

执行cordova requirements时的错误:

C:\Users\NAME\Desktop\TestProject>cordova requirements

Requirements check results for android:
Java JDK: installed 19.0.1
Android SDK: installed true
Android target: not installed
Command failed with exit code 1: avdmanager list target
Exception in thread "main" java.lang.NoClassDefFoundError: javax/xml/bind/annotation/XmlSchema
        at com.android.repository.api.SchemaModule$SchemaModuleVersion.<init>(SchemaModule.java:156)
        at com.android.repository.api.SchemaModule.<init>(SchemaModule.java:75)
        at com.android.sdklib.repository.AndroidSdkHandler.<clinit>(AndroidSdkHandler.java:81)
        at com.android.sdklib.tool.AvdManagerCli.run(AvdManagerCli.java:213)
        at com.android.sdklib.tool.AvdManagerCli.main(AvdManagerCli.java:200)
Caused by: java.lang.ClassNotFoundException: javax/xml/bind/annotation/XmlSchema
        at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
        at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
        at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
        ... 5 more
Gradle: installed C:\gradle-6.9.3\bin\gradle.BAT
Some of requirements check failed

执行cordova build时的错误:

C:\Users\NAME\Desktop\TestProject>cordova build
Checking Java JDK and Android SDK versions
ANDROID_SDK_ROOT=undefined (recommended setting)
ANDROID_HOME=C:\Users\NAME\AppData\Local\Android\Sdk (DEPRECATED)
Using Android SDK: C:\Users\NAME\AppData\Local\Android\Sdk
Starting a Gradle Daemon (subsequent builds will be faster)

FAILURE: Build failed with an exception.

* Where:
Settings file 'C:\Users\NAME\Desktop\TestProject\platforms\android\settings.gradle'

* What went wrong:
Could not compile settings file 'C:\Users\NAME\Desktop\TestProject\platforms\android\settings.gradle'.
> startup failed:
  General error during semantic analysis: Unsupported class file major version 63

settings.gradle文件内容

// GENERATED FILE - DO NOT EDIT
apply from: "cdv-gradle-name.gradle"
include ":"
include ":CordovaLib"
include ":app"

环境版本信息

  • Java Version: 19.0.1
  • Cordova Version: 11.0.0
  • NPM Version: 7.15.0
  • Gradle Version: 6.9.3

解决方案

1. 降级Java版本

当前使用的Java 19属于高版本,Cordova Android 10.1.1和Gradle 6.9.3不支持该版本:

  • Unsupported class file major version 63对应Java 19,Gradle 6.x最高支持Java 15,建议直接降级到Java 8或Java 11(这两个是Android开发的长期支持版本,兼容性最优)。
  • 卸载Java 19后安装Java 8/11,更新系统环境变量JAVA_HOME和Path指向新的Java安装目录。

2. 解决avdmanager依赖缺失问题

Java 9及以上移除了JAXB模块,旧版Android SDK工具依赖该模块。如果暂时不想降级Java,可通过以下方式临时修复:

  • 添加系统环境变量JAVA_OPTS,值为--add-modules java.xml.bind
  • 或执行avdmanager时手动追加参数:avdmanager --add-modules java.xml.bind list target
    但优先推荐降级Java,避免后续更多兼容性问题。

3. 配置Android环境变量与SDK目标版本

  • 设置ANDROID_SDK_ROOT环境变量,指向你的Android SDK目录(即C:\Users\NAME\AppData\Local\Android\Sdk),替代已废弃的ANDROID_HOME。
  • 打开Android Studio的SDK Manager,安装Android 30(API Level 30)(Cordova Android 10.x默认针对该API版本)。

4. 验证配置并重新构建

  • 执行cordova requirements,确认所有检查项通过。
  • 移除现有Android平台后重新添加:
    cordova platform remove android
    cordova platform add android@10.1.1
    
  • 再次执行cordova build尝试构建。

内容的提问来源于stack exchange,提问作者Pha4g

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 23:25:17