Cordova Android在Windows环境下构建报错:No usable Android build tools found
Cordova Android在Windows环境下构建报错:No usable Android build tools found
我太懂这种卡壳的感觉了——明明把旧电脑的环境变量原封不动搬到新电脑,装了最新的Android Studio,结果cordova build android还是抛出「No usable Android build tools found」的错误,翻遍相似问题试了个遍也没用,属实闹心。结合你描述的细节(旧电脑是Arctic Fox、新电脑是Meerkat,报错指向CordovaLib的cordova.gradle第75行),我给你梳理几个针对性的解决思路:
1. 补装Cordova指定的Build Tools版本
报错里明确标注「Recommended version is 32.0.0」,但系统识别到的最高版本是28.0.2,首先要排查你是否真的安装了32.0.0版本的Build Tools:
- 打开Android Studio,进入「SDK Manager」→「SDK Tools」面板,勾选右上角的「Show Package Details」
- 展开「Android Build Tools」选项,查看是否有
32.0.0的版本,如果没有,勾选它并点击「Apply」安装 - 安装完成后,手动去SDK目录验证:打开
C:\Users\rolin\AppData\Local\Android\sdk\build-tools,确认存在32.0.0的文件夹
新的Meerkat版本Android Studio默认不会安装旧版本的Build Tools,这大概率是你新旧环境的核心差异之一。
2. 检查Cordova Android平台版本的兼容性
不同版本的Cordova Android平台对Build Tools的要求是绑定的,比如:
- Cordova Android 11.x 强制要求Build Tools 32.0.0
- 旧版本的Cordova Android可能和新Android Studio的环境不兼容
你可以先查看当前项目的Cordova Android平台版本:
cordova platform ls
如果版本低于11.x,建议升级到对应版本(注意提前备份项目):
# 先移除旧平台 cordova platform remove android # 安装指定版本的Android平台 cordova platform add android@11
3. 修复Cordova Gradle脚本的版本检测逻辑
如果已经安装了32.0.0但系统还是识别不到,可能是Cordova的cordova.gradle脚本版本检测逻辑出了问题:
- 打开
C:\Users\rolin\dev\AttendaGo\platforms\android\CordovaLib\cordova.gradle文件,定位到第75行附近的版本检测代码 - 检查是否存在正则匹配错误(比如把28.x错误归类到32.x系列)
- 临时权宜方案:可以直接修改脚本里的「Recommended version」值为你已安装的最高Build Tools版本(比如28.0.2),但优先还是安装推荐的32.0.0版本
4. 验证环境变量的实际生效状态
虽然你说环境变量和旧电脑一致,但新系统可能存在环境变量未生效的情况:
- 打开新的命令提示符窗口(避免缓存),执行以下命令验证:
# 验证SDK路径是否正确 echo %ANDROID_SDK_ROOT% # 查看已安装的Build Tools列表 dir %ANDROID_SDK_ROOT%\build-tools - 如果输出里没有32.0.0的文件夹,说明SDK路径配置有误,或者Build Tools安装路径不对
内容来源于stack exchange
相关产品推荐
相关产品推荐

