我正在尝试从android-x86 aosp构建一个framework.jar,但是/ frameworks / base中的'mm'返回“没有这样的文件或目录”。我也尝试了“ make framework”,但是在该framework.jar大小之后增加了300个字节。我尝试使用“ make modules”来获取框架模块名称,但是列出了这么长时间。可能有人知道用于构建完整framework.jar的模块名称吗?
更新:我不知道为什么mm和mmm对我不起作用,但是我理解在Android .oat和.odex文件中编译了android 5.0 java类之后,“ make framework”可以正常工作。但是,我尝试反转包含dalvik且内部带有.dex文件的framework.jar的模拟器framework.jar。当我比较构建文件和仿真器文件时,这让我感到困惑。
答案 0 :(得分:1)
首先,您应该在~/.bashrc
中加入这些内容,并进行完整的构建/更新。否则,仅制作和构建框架的一部分将导致设备无法启动。由于未在构建时进行预优化,因此这将导致首次启动速度稍慢。
export WITH_DEXPREOPT=false
export DISABLE_DEXPREOPT=true
export DEX_PREOPT_DEFAULT=nostripping
下一个版本,您可以只运行
source build/setupenv.sh
lunch XXXXX-userdebug
make framework
并在设备上更新
adb root
adb remount
adb sync
adb reboot
答案 1 :(得分:0)
尝试从AOSP主目录运行以下命令:
mmm frameworks/base/
答案 2 :(得分:0)
此命令的第一个安装环境:
source build/setupenv.sh
您的目标第二次午餐
lunch your-target
第三次使用此命令来构建framework.jar
mmm framework/base
如果有任何问题或错误,请先清理源目录,然后运行第三个命令
make clean