android - `transformNativeLibsWithStripDebugSymbol` 未执行
问题描述
我有一个例程希望 AGPapp/build/intermediates/transforms/stripDebugSymbol/debug
在assembleDebug
. 我的依赖项中还有一些带有本机代码的 aars。它在我的本地机器上运行良好,但在我的 CI 上不起作用。我发现这个文件夹是由 task 生成的transformNativeLibsWithStripDebugSymbolForDebug
。但在我的 CI 上,它甚至没有这样的任务。
Task with path 'transformNativeLibsWithStripDebugSymbolForDebug' not found in project ':app'
不幸的是,我无法判断出了什么问题。至少不是没有 AGP 源代码。
所以问题是:transformNativeLibsWithStripDebugSymbol
在执行期间触发什么assemble
或如何强制执行?
我正在使用 AGP 3.1.3 和 gradle wrapper 4.5。
解决方案
ndk.dir
最终我发现只有在配置了 NDK(duh),即设置local.properties
或ANDROID_NDK_HOME
/ ANDROID_NDK
(我不确定哪个是强制性的)环境变量设置时,AGP 才会抛出与 NDK 相关的任务。
UPD:根据 AGP 源代码ANDROID_NDK_HOME
,至少目前是这样。
https://android.googlesource.com/platform/tools/build/+/refs/heads/master/gradle/src/main/groovy/com/android/build/gradle/internal/Sdk.groovy#205
推荐阅读
- java - Firebase 安全规则需要获取孩子的多个查询
- java - 使用 BlockingQueue 的 java 异步服务实现
- javascript - 使用 jquery 和 jquery.copy-to-clipboard.js 复制到剪贴板问题
- node.js - MongoDb 根据是否指定字段进行查询
- ruby-on-rails - 我想运行一个旧的 rails 3.3.2 项目,为此寻找特定和具体的步骤
- reactjs - react-hook-form 控制器,基于值进行验证
- python - 为什么它在 python 的 codeforces 上给出运行时错误?
- r - 根据多个条件过滤行
- git - 我怎样才能发现我隐藏的 git commit 哈希?
- javascript - 抓取稍后使用 Cheerio 加载的数据