打包AAPT: error: style attribute ‘attr/colorPrimary (aka com.xxx.library:attr/colorPrimary)‘ not found

文章讲述了在打包项目时遇到AAPT错误,指出问题可能源于使用了compileOnly而不是implementation的依赖方式。compileOnly只在编译时有效,不参与打包,导致打包过程出错。解决方案是检查并更正build.gradle文件中的依赖项,确保使用正确的依赖类型如implementation。作者强调理解不同依赖方式的区别是避免此类问题的关键。

        最近遇到这样的问题,发布版本,打包项目时出错
            AAPT: error: style attribute 'attr/colorPrimary (aka com.xxx.library:attr/colorPrimary)' not found.

原因:
查看出错的模块的build.gradle,看依赖是否写错了:

// compileOnly "com.android.support:appcompat-v7:28.0.0"    //错误代码

implementation "com.android.support:appcompat-v7:28.0.0"    //正确代码

compileOnly只在编译时有效,不会参与打包。【所以才会出现直接编译运行正常,而打包时出错】

implementation:该依赖方式所依赖的库不会传递,只会在当前module中生效。
api:该依赖方式会传递所依赖的库,当其他module依赖了该module时,可以使用该module下使用api依赖的库。

implementation、api、compileOnly区别详解

        所以,遇到此种问题,先思考是不是自己依赖写错了,不要盲目的去重启或删除缓存什么的。当然,最重要还是知识要学扎实,明白每种依赖方式的区别!引以为鉴吧!!

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值