CentOS 7 下安装 aapt 工具全流程

2026-02-02 35 浏览 0 评论

作为 Android 开发或运维同学,在 CentOS 7 服务器上处理 APK 打包、资源解析等操作时,大概率会遇到 /bin/sh: aapt: command not found 的报错。 aapt (Android Asset Packaging Tool)是 Android SDK Build-Tools 核心组件,本文从开发者视角,拆解 CentOS 7 下基于手动安装方式(更稳定、可控)搭配 JDK 1.7 的完整部署流程,解决工具找不到、执行失败等核心问题。

一、核心背景与问题分析

aapt 依赖两个关键条件:一是 Android SDK Build-Tools 环境,二是 32 位系统运行库(CentOS 7 多为 64 位,而早期 aapt 为 32 位程序);此外,考虑到部分老项目兼容性,本文选用 JDK 1.7 搭配(若无需兼容,JDK 1.8 亦可)。报错本质无非三类:

  1. 未安装 Build-Tools,系统无 aapt 可执行文件;
  2. 缺少 32 位依赖库,即便安装了 aapt 也无法执行;
  3. aapt 路径未加入环境变量,系统无法全局调用。

二、前置准备

1. 权限与网络

确保以 root 权限操作(避免权限不足),服务器联网正常;可选关闭防火墙/SELinux 减少干扰:

# 临时关闭防火墙
systemctl stop firewalld && systemctl disable firewalld
# 临时关闭 SELinux
setenforce 0
sed -i 's/^SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config

2. 安装 JDK 1.7(适配老项目)

aapt 本身对 JDK 版本要求不高,但后续若需搭配 SDK 其他工具,需先部署 JDK:

# 安装 JDK 1.7
yum install -y java-1.7.0-openjdk-devel
# 验证安装
java -version

输出类似以下内容即说明 JDK 1.7 安装成功:

openjdk version "1.7.0_xxx"
OpenJDK Runtime Environment (rhel-2.6.xxx.el7-x86_64)
OpenJDK 64-Bit Server VM (build 24.xxx-b01, mixed mode)

三、核心步骤:安装 aapt 工具

步骤 1:安装 32 位依赖库(重中之重)

64 位 CentOS 7 运行 32 位 aapt 必须依赖以下库,缺一不可:

# 更新 yum 源(可选,确保包下载正常)
yum update -y

# 安装 32 位依赖集合
yum install -y \
    zlib-devel.i686 \
    libstdc++.i686 \
    ncurses-devel.i686 \
    libxml2-devel.i686 \
    bzip2-devel.i686 \
    openssl-devel.i686

安装过程中提示 Is this ok [y/N]? 时,输入 y 回车即可。

步骤 2:手动下载并解压 Build-Tools

手动安装方式路径可控,适合生产环境,推荐选择 30.0.3 版本(兼容 CentOS 7,稳定性高):

# 1. 创建统一的 SDK 目录,便于管理
mkdir -p /opt/android-sdk/build-tools
cd /opt/android-sdk/build-tools

# 2. 下载 Build-Tools 压缩包(推荐清华镜像,速度更快)
# 若 wget 未安装,先执行:yum install -y wget
wget https://mirrors.tuna.tsinghua.edu.cn/android/repository/build-tools_r30.0.3-linux.zip

# 3. 解压(若 unzip 未安装,先执行:yum install -y unzip)
unzip build-tools_r30.0.3-linux.zip

# 4. 删除压缩包,节省空间
rm -f build-tools_r30.0.3-linux.zip

解压后会生成 30.0.3 目录, aapt 可执行文件就在该目录下。

步骤 3:配置环境变量(永久生效)

仅解压还不够,需将 aapt 路径加入系统环境变量,确保所有用户、所有终端都能调用:

# 编辑全局环境变量文件
vi /etc/profile

# 在文件末尾添加以下内容(路径需与解压目录一致)
# Android SDK 环境变量
export ANDROID_HOME=/opt/android-sdk
export PATH=$PATH:$ANDROID_HOME/build-tools/30.0.3

# 保存退出 vi:按 Esc → 输入:wq → 回车

# 让环境变量立即生效
source /etc/profile

四、验证安装结果

执行以下命令,若输出 aapt 版本信息,说明全流程部署成功:

aapt version

成功输出示例:

Android Asset Packaging Tool (aapt) 30.0.3
Build ID: 7583922

五、常见问题排查(开发者踩坑指南)

  1. 执行 aapt 提示 No such file or directory : 原因:漏装 32 位依赖库,重新执行步骤 1 的依赖安装命令即可。
  2. wget 下载压缩包超时/失败 : 解决方案:更换清华镜像链接(本文已提供),或手动下载压缩包后上传到 /opt/android-sdk/build-tools 目录再解压。
  3. 环境变量配置后仍找不到 aapt : 排查步骤:
  • 检查路径是否正确: ls /opt/android-sdk/build-tools/30.0.3/aapt ,若文件不存在,说明解压失败或包损坏,重新下载解压;
  • 重新生效环境变量: source /etc/profile ,或重启终端/服务器。

六、总结

  1. CentOS 7 安装 aapt 的核心是「先补 32 位依赖,再装 Build-Tools,最后配环境变量」,三者缺一不可;
  2. 手动安装方式路径清晰,适合生产环境,搭配 JDK 1.7 可兼容老项目;
  3. 验证环节执行 aapt version 是最直接的校验方式,能输出版本信息即代表部署完成。

至此,CentOS 7 下 aapt 工具的安装就全部完成了,无论是解析 APK 资源、打包 Android 应用,还是集成到自动化构建流程,都能正常使用。


发布评论

发布评论前请先 登录

评论列表 0

暂无评论