NDK is not installed 错误
Android C++项目因NDK自动下载失败导致"NDK未安装"错误。检查发现SDK目录下存在多个带后缀的残缺NDK文件夹(如27.0.12077973-1等),仅一个子目录包含完整文件。解决步骤:1)保留有效目录;2)删除冗余目录;3)将完整文件夹重命名为基准版本号(如27.0.12077973)。重启后Gradle成功识别NDK路径。该问题源于SDK Manager下载中断产生的目录命名混乱
A problem occurred configuring project ':app'.
> org.gradle.api.InvalidUserDataException: NDK is not installed
* Try:
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.
> Get more help at https://help.gradle.org.
错误根源
在创建 Android C++ 项目时,由于 NDK 自动下载过程失败,导致项目配置所需的特定版本 NDK 缺失或不完整。
首次尝试及问题现象
-
手动安装尝试: 通过 Android Studio 的 SDK Manager 重新下载了项目所需的 NDK 版本 27.0.12077973。
-
重启后仍报错: 重启 Android Studio 后,Gradle 仍然提示 NDK 未安装或找不到正确的路径/版本。
-
目录检查发现异常: 导航至 NDK 的存放目录 AppData\Local\Android\Sdk\ndk,发现系统为 NDK 版本 27.0.12077973 创建了多个子目录,格式为 27.0.12077973-xxx。
- 例如:27.0.12077973-1、27.0.12077973-2 等。
- 异常点: 大多数这些子目录是空的或不完整的,只有其中一个子目录(例如 27.0.12077973-5)包含了完整的 NDK 工具链文件。
最终解决方案
此问题是由于 SDK Manager 在多次失败/不完整的下载尝试后,创建了多个带有后缀的临时或不完整 NDK 目录,导致 Gradle 或 Android Studio 无法识别正确的 NDK 路径。
手动修复步骤:
-
定位有效目录: 在 NDK 存放目录 AppData\Local\Android\Sdk\ndk 中,识别并保留唯一一个包含完整 NDK 工具链(如 platforms、toolchains 目录)的子文件夹(如 27.0.12077973-5)。
-
清理冗余目录: 删除所有其他不完整或为空的 27.0.12077973-xxx 文件夹。
-
重命名目录: 将包含完整 NDK 的文件夹(27.0.12077973-5)重命名为其基准版本号:27.0.12077973。
-
验证: 重启 Android Studio。Gradle 成功识别了正确命名的 NDK 路径,项目配置问题解决。
总结与经验
当 SDK Manager 自动下载 NDK 失败或中断时,可能会在 ndk/ 目录下留下带有后缀(-xxx)的残缺文件夹。手动修复的关键在于清理这些冗余目录,并确保完整的 NDK 目录直接以其版本号命名,以便 Android Studio 和 Gradle 插件能按预期路径找到并加载 NDK 工具链。
更多推荐




所有评论(0)