解决Android运行出现NDK at /Library/Android/sdk/ndk-bundle did not have a source.properties file

当尝试运行包含NDK的Android项目时,出现'Execution failed for task ':app:stripDebugDebugSymbols''.原因是缺少NDK。解决方法包括在Android Studio中安装NDK,配置环境变量,并在build.gradle或local.properties中指定NDK路径。如果项目未使用NDK,检查并删除空的ndk-bundle目录。

问题描述

将其他项目导致自己的电脑上运行时,出现以下编译错误。

Execution failed for task ':app:stripDebugDebugSymbols'. > NDK at /Users/ado/Library/Android/sdk/ndk-bundle did not have a source.properties file

解决方案

项目使用了NDK

项目使用了NDK,但是没有安装ndk,那就先在Preferences->Appearance & Behavior->System Settings->Android SDK->SDK TOols中安装NDK。
在这里插入图片描述
然后配置NDK的环境变量。
最后在local.properties中或者build.gradle中配置ndk。

  • gradle版本是4.1以下的,直接在local.properties中添加以下代码即可。
# 后面是NDK的目录
ndk.dir=/Users/ado/Library/Android/sdk/ndk-bundle
  • 如果是Android Studio 4.1以上创建的项目,gradle插件版本是在4.1,那么需要在app的build.gradle中使用ndkVersion指定ndk的具体版本号。
android {
  defaultConfig {
     // ...
     ndkVersion = "ndk具体版本号"
  }
}

项目没有使用NDK

如果项目中没有使用到ndk,也没有配置ndk。那就去Android sdk的所中的目录中查看,是否存在报错中显示的ndk-bundle,如果存在ndk-bundle目录,但是目录中没有任何内容,直接删除这个文件夹即可,然后重新运行就不会报错。

<think> 我们面对的问题是:NDK在指定路径下缺少source.properties文件。这个文件通常包含NDK的版本信息,缺失会导致构建失败。 解决方案: 1. 验证source.properties文件是否存在: 前往路径 C:\Users\win10\AppData\Local\Android\Sdk\ndk-bundle ,检查是否有source.properties文件。 2. 如果文件不存在,可能是NDK安装不完整。可以尝试重新安装NDK- 打开Android Studio,进入SDK Manager -> SDK Tools。 - 取消勾选“NDK (Side by side)”,点击Apply进行卸载。 - 然后重新勾选,安装最新版本的NDK。 3. 如果重新安装后还是找不到,可以手动创建source.properties文件(但通常不推荐,因为版本信息可能不正确): 在ndk-bundle文件夹内创建source.properties文件,内容如下(以NDK 25.1.8937393为例): Pkg.Desc = Android NDK Pkg.Revision = 25.1.8937393 但请注意,手动创建需要知道确切的NDK版本,否则可能导致版本不匹配问题。 4. 更新项目配置,使用新安装的NDK路径(如果安装了多个版本): 在项目的local.properties文件中,确保ndk.dir指向正确的NDK路径,例如: ndk.dir=C\:\\Users\\win10\\AppData\\Local\\Android\\Sdk\\ndk\\25.1.8937393 5. 如果不需要NDK,可以在gradle.properties中禁用NDKandroid.useDeprecatedNdk=false 步骤总结: 首选重新安装NDK,确保source.properties文件存在。如果问题仍然存在,检查NDK路径配置。 注意:在构建过程中,Gradle需要读取source.properties来获取NDK版本信息,缺失则报错。 §§相关问题§§ 1. 如何通过命令行检查Android NDK是否安装正确? 2. 重新安装NDK后项目仍然报错,应该如何排查? 3. 在哪些情况下需要在Android项目中配置NDK路径? 4. 如何在不使用Android Studio的情况下手动安装NDK? 5. NDKsource.properties文件内容结构是怎样的? </think> ### 问题分析 您遇到的错误 `NDK at ... did not have a source.properties file` 表明: - NDK安装目录 `C:\Users\win10\AppData\Local\Android\Sdk\ndk-bundle` 缺少关键文件 - `source.properties` 文件用于标识NDK版本信息,缺失会导致构建系统无法识别NDK ### 解决方案 #### 方案1:重新安装NDK(推荐) 1. 打开Android Studio → SDK Manager 2. 取消勾选所有NDK版本 → Apply(卸载现有NDK) 3. 重新勾选最新NDK版本(如25.x)→ Apply 4. 验证新路径: ```bash # 新安装路径通常为 C:\Users\win10\AppData\Local\Android\Sdk\ndk\25.1.8937393 ``` #### 方案2:手动修复(临时) 1. 创建缺失文件: ```bash # 在ndk-bundle目录下创建source.properties echo Pkg.Revision=25.1.8937393 > C:\Users\win10\AppData\Local\Android\Sdk\ndk-bundle\source.properties ``` 2. 修改项目配置: ```gradle // app/build.gradle android { ndkVersion "25.1.8937393" // 与文件版本一致 } ``` #### 方案3:更新NDK路径 修改 `local.properties`: ```properties # 指向有效NDK路径 ndk.dir=C\:\\Users\\win10\\AppData\\Local\\Android\\Sdk\\ndk\\25.1.8937393 # 或完全移除(让Gradle自动检测) # ndk.dir= ``` ### 验证步骤 1. 检查文件是否存在: ```bash dir C:\Users\win10\AppData\Local\Android\Sdk\ndk*\source.properties ``` 2. 运行构建检测: ```bash ./gradlew --info :app:stripDebugDebugSymbols ``` ### 预防措施 1. **避免手动修改NDK目录**:始终通过SDK Manager安装 2. **定期清理过期版本**:删除旧版NDK目录(如`ndk-bundle`) 3. **使用版本控制**:将`local.properties`加入`.gitignore`
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值