Android 源码编译环境下缺少jar包的问题处理

Android 源码编译报错,如下:
在这里插入图片描述
 看图可以发现是缺少 constraint-layout 引起的错误。这里有一种情况是,其它同事电脑可以编译通过,而自己的电脑编译通不过。原因如下:
 constraint-layout 这个jar包是在存放在源码下一个叫 Launcher3的模块里面(别的公司不一定是这样),只有编译了Launcher3之后其它的模块才能使用。自己和同事虽然是用同一套源码,但不同的项目,配置文件有细微的差别,导致自己的电脑没有编译Launcher3模块,所以报错。
 此图是笔者负责项目的 mk 文件  上图是笔者负责项目的 mk 文件,AutoHome是项目Launcher。AutoHome 编译文件Android.mk如下图:
在这里插入图片描述
 红框里的 LOCAL_OVERRIDES_PACKAGES 变量可以使其表示的模块不加入编译,到这里就真相大白了。。。
 原因是找出来了,那怎么修改才能不报错呢?
 有两种方法:
 第一种:注释掉 auto_dual.mk 文件里的 PRODUCT_PACKAGES += AutoHome 这一行

在这里插入图片描述
 注释后就不会编译AutoHome模块,不会执行AutoHome 编译文件Android.mk,自然就不执行LOCAL_OVERRIDES_PACKAGES := MtkLauncher3 Home Launcher2 Launcher3 这一行代码了,这样Launcher3就会编译。
 第二种(没测试):直接注释掉AutoHome 编译文件Android.mk 里的 LOCAL_OVERRIDES_PACKAGES := MtkLauncher3 Home Launcher2 Launcher3
 在这里插入图片描述
 这样就会编译Launcher3了,不过这样注释后编译的系统就有两个Launcher 了。。。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值