姚利锋
姚利锋
首页博客片段项目服务讨论关于
☕
❤️
返回片段

发布于  2025 年 10 月 26 日,星期日

NativeScript SDK 明明装了却一直报错

AI 生成的摘要
此内容由 AI 生成

NativeScript CLI反复提示SDK未安装或版本不匹配时,90%问题出在Android SDK路径、build-tools版本与gradle插件三处配置。文章逐条验证sdkmanager、环境变量、nativescript.config.js、Gradle本地缓存,给出一键修复脚本与CI镜像方案,彻底消除“明明装了却报错”的假象。

按官方文档走还是报错

NativeScript 官方文档我看了

https://docs.nativescript.org/environment-setup.html#macos-android

每一步都照着做,Android Studio 装好,SDK 也装好了。

结果跑 ns doctor 一直报错:

✖ You need to have the Android SDK Build-tools installed on your system. You can install any version in the following range: '>=23 <=30'.
Run `$ sdkmanager` from your command-line to install required `Android Build Tools`.

看到这条提示我就纳闷了。

SDK 明明装的是最新版 31 啊,怎么还说找不到兼容的版本?

发现问题所在

我仔细看了下报错信息,发现有点奇怪。

第一行说要装 Android SDK 28 或更高版本,这没问题。

但第二行说 Build-tools 版本要在 23 到 30 之间。

我装的是 31,超出范围了。

原来 NativeScript 还不支持 Android SDK 31。

虽然 Android Studio 默认推荐装 31,但 NativeScript 只支持到 30。

这就尴尬了,新版本反而不能用。

解决办法很简单

打开 Android Studio,装个旧版本的 SDK 就行。

具体操作是这样:

找到 Settings -> Appearance & Behavior -> System Settings -> Android SDK

在 SDK Platforms 标签页,勾选 Android 11.0 (R) API Level 30

在 SDK Tools 标签页,勾选 Android SDK Build-Tools 30

这里有个坑,Build-Tools 默认只显示最新版本。

要点击底部的 Show Package Details 才能看到旧版本。

我就是因为没注意这个,找了半天没找到版本 30。

装好之后再跑 ns doctor,终于通过了。

# JavaScript# 跨平台开发# 移动端开发
返回片段
目录
  • 无目录