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

Mac环境下Cordova构建Android应用遇多问题:Android Studio启动报错

MacOS 13.4.1 下 Cordova Android 构建环境及 Android Studio 启动问题

一、Cordova Android 环境检测报错

执行cordova requirements后输出如下:

Requirements check results for android:
Java JDK: installed 11.0.21

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:581)
    at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
    ... 5 more
Gradle: installed /usr/local/Cellar/gradle/8.5/bin/gradle

Requirements check results for browser:
Some of requirements check failed

问题根源及解决办法

  • 核心问题:Java 11 移除了javax.xml.bind模块,但旧版Android SDK工具依赖该模块,导致avdmanager执行失败。
  • 解决步骤:
    1. 临时修复:在终端先执行以下命令添加JVM参数,再重新运行检测:
      export JAVA_OPTS="--add-modules java.xml.bind"
      cordova requirements
      
    2. 永久生效:把上述export命令添加到你的shell配置文件(比如~/.zshrc或~/.bash_profile),保存后执行source ~/.zshrc(对应你的shell)让配置生效。
    3. 安装Android Target:修复环境后,打开Android Studio的SDK Manager,安装至少一个Android SDK Platform(比如Android 33/34),再运行检测就能识别到Android target。
    4. Browser环境修复:确保Chrome浏览器已安装,再重新运行cordova requirements即可。

二、Android Studio 启动报错「IDE Already Running」

报错详情

Cannot connect to already running IDE instance.
CannotActivateException: /Users/tomadkins/Library/Application Support/Google/AndroidStudio2023.1

报错提到的目录不存在,试过卸载重装、终止进程等方法都没用。

解决办法

  1. 删除锁文件:Android Studio会生成锁文件标记运行状态,即使进程终止也可能残留。执行以下命令查找并删除相关锁文件:
    find ~/Library/Application\ Support/Google -name "*.lock" -o -name "*.pid"
    
    找到后删除对应文件即可。
  2. 清理缓存日志:即使目标目录不存在,可能有其他缓存残留,执行命令清理:
    rm -rf ~/Library/Caches/Google/AndroidStudio2023.1
    rm -rf ~/Library/Logs/Google/AndroidStudio2023.1
    
  3. 彻底终止进程:打开Activity Monitor,搜索java或studio相关进程,强制终止所有匹配的进程后再启动Android Studio。
  4. 修复目录权限:先创建缺失的目录并设置正确权限:
    mkdir -p ~/Library/Application\ Support/Google/AndroidStudio2023.1
    chmod -R 755 ~/Library/Application\ Support/Google
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 21:30:19