升级Gradle插件与Android Studio 4.2.1后构建C++库时遭遇NDK版本不一致Gradle构建错误
解决NDK版本配置与实际路径版本不一致的问题
刚升级完Gradle插件和Android Studio 4.2.1就碰到这个NDK版本不匹配的报错,确实挺闹心的。本质原因就是你项目里配置的android.ndkVersion是22.1.x,但系统环境变量或者local.properties里的ndk.dir指向的还是旧版的18.0.5002713,两者对不上就触发了这个EvalIssueException。
给你几个实用的解决办法,选适合你的就行:
调整项目配置,适配已安装的旧版NDK
如果暂时不需要升级NDK,直接修改Module级别的build.gradle文件,把ndkVersion改成你现有的18.0.5002713版本号就行:android { // 其他配置保持不变 ndkVersion "18.0.5002713" }改完后点击Sync Now,应该就能正常构建了。
安装指定版本的NDK,更新路径指向
要是你确实需要用22.1.x版本的NDK,按下面步骤操作:- 打开Android Studio的设置(Windows/Linux点File→Settings,Mac选Android Studio→Preferences)
- 导航到
Appearance & Behavior→System Settings→Android SDK - 切换到
SDK Tools标签,勾选右上角的Show Package Details - 找到
NDK (Side by side),展开后勾选22.1.x对应的具体版本,点击Apply开始安装 - 安装完成后,要么让AS自动同步路径,要么手动修改
local.properties里的ndk.dir,指向新安装的NDK文件夹,比如:ndk.dir=D:\\Sdk\\ndk\\22.1.7171670
借助AS的自动修复提示快速解决
很多时候AS会在你打开项目时自动弹出版本不匹配的提示,直接点击提示里的Install NDK或者Change NDK version选项,跟着向导一步步走,就能自动完成配置,不用手动改任何文件,最省心。
内容的提问来源于stack exchange,提问作者Qamar




