首页 > 解决方案 > 为什么android插件3.2.1在缓存中使用aapt2而不是使用我的构建工具?

问题描述

信息:

下载https://dl.google.com/dl/android/maven2/com/android/tools/build/aapt2/3.2.1-4818971/aapt2-3.2.1-4818971.pom 下载https://dl.google .com/dl/android/maven2/com/android/tools/build/aapt2/3.2.1-4818971/aapt2-3.2.1-4818971-linux.jar AAPT2 aapt2-3.2.1-4818971-linux 守护进程#5:意外错误输出:/root/.gradle/caches/transforms-1/files-1.1/aapt2-3.2.1-4818971-linux.jar/28466e2cbc873eea3f650b3c015e2502/aapt2-3.2.1-4818971-linux/aapt2: /lib64/libc .so.6:未找到版本“GLIBC_2.14”(/root/.gradle/caches/transforms-1/files-1.1/aapt2-3.2.1-4818971-linux.jar/28466e2cbc873eea3f650b3c015e2502/aapt2-3.2 需要。 1-4818971-linux/aapt2)

做了什么:

wget https://ftp.gnu.org/gnu/glibc/glibc-2.14.tar.gz
tar zxvf glibc-2.14.tar.gz
cd glibc-2.14
mkdir build
cd build
../configure –prefix=/opt/glibc-2.14
make -j4
sudo make install
export LD_LIBRARY_PATH=/opt/glibc-2.14/lib

build-tools/28.0.3/aapt2
#!/bin/sh
export LD_LIBRARY_PATH=/opt/glibc-2.14/lib && "$0"_ $@

问题:

我的系统已经下载并配置了 build-tools,但 build-tools 中仍然没有 aapt2

标签: androidcentos6gradle-pluginaapt2

解决方案


由于构建工具的不频繁发布,Android Gradle 插件 3.2.0-alpha11 及更高版本(包括您的 3.2.1 版本)不再使用构建工具中的 AAPT2。

相反,AGP 从 Google maven 获得 AAPT2(这就是为什么您需要在 build.gradle 中具有“google()”依赖项的原因)。多亏了这一点,AGP 可以提供带有最新修复和功能的新版本 AAPT2,而无需等待下一个版本的构建工具问世。


推荐阅读