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

Cordova未检测到ANDROID_SDK_ROOT与ANDROID_HOME问题求助

解决Cordova无法检测ANDROID_SDK_ROOT/ANDROID_HOME的问题

我之前也踩过这个一模一样的坑!明明把ANDROID_SDK_ROOT和ANDROID_HOME都配置到环境变量里了,重装SDK也试过,Cordova就是死活检测不到,折腾了好半天才摸清楚几个容易忽略的点,你可以挨个试试:

  • 先确认环境变量真的生效了
    别光看配置文件,直接在终端里执行这两个命令:

    echo $ANDROID_SDK_ROOT
    echo $ANDROID_HOME
    

    如果输出是空的或者不是你配置的路径,说明环境变量没生效:

    • 如果你用的是bash,改了~/.bashrc后要执行source ~/.bashrc重启会话;如果是zsh,要改~/.zshrc再执行source ~/.zshrc
    • Windows用户要确认是配置在系统变量里,不是用户变量,而且要重启终端甚至电脑才会生效
  • 检查Cordova的本地配置是否覆盖了系统变量
    看看项目根目录下的config.xml,有没有类似这样的配置:

    <preference name="AndroidSdkPath" value="/你的/sdk/绝对路径" />
    

    如果有,确保路径完全正确;如果没有,可以手动加上这一行,强制Cordova使用指定的SDK路径,有时候它会优先读取这个本地配置。

  • 确认SDK的必要组件都装全了
    Cordova认的不只是SDK根目录,还需要对应版本的工具组件:

    • 打开Android Studio的SDK Manager,检查是否安装了:
      • Android SDK Platform(对应你项目的targetSdkVersion)
      • Android SDK Build-Tools(建议选Cordova官方文档推荐的版本,比如30.0.3)
      • Android SDK Platform-Tools
    • 还要把这些工具的路径加到PATH里:
      # 比如在bash配置里加
      export PATH=$PATH:$ANDROID_SDK_ROOT/platform-tools
      export PATH=$PATH:$ANDROID_SDK_ROOT/build-tools/你的版本号
      
  • 别用sudo运行Cordova
    如果你用sudo执行Cordova命令,会切换到root用户,root的环境变量和普通用户完全不一样,自然检测不到你配置的路径。直接用普通用户身份运行所有Cordova命令就行。

  • 重置Cordova的Android平台配置
    有时候平台缓存会出问题,试试先移除再重新添加:

    cordova platform remove android
    # 可以指定和你SDK匹配的版本,比如android@11.0.0
    cordova platform add android@指定版本
    
  • Windows用户额外注意
    路径里不要有空格或者中文,比如别把SDK装在C:\Program Files\Android\Sdk,换成C:\Android\Sdk这种无空格的路径,不然Cordova可能解析失败。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.14 07:43:03