Android进阶:上传jcenter封装库遇到的问题

Manifest merger failed

异常信息

Error:Execution failed for task ':module-user:processDebugManifest'.
> Manifest merger failed : Attribute application@label value=(组件模块:User) from AndroidManifest.xml:8:9-29
	is also present at [com.itsdf07:lib-alog:2.0.2] AndroidManifest.xml:11:9-41 value=(@string/app_name).
	Suggestion: add 'tools:replace="android:label"' to <application> element at AndroidManifest.xml:5:5-17:19 to override.

原因分析
项目这边我依赖的第三方库com.itsdf07:lib-alog:2.0.2在编译时AndroidManifest.xml中的属性合并出现了冲突Manifest merger failed

解决方案一
从日志中的提示,这边建议的解决方案是

Suggestion: add 'tools:replace="android:label"' to <application> element at AndroidManifest.xml:5:5-17:19 to override.

在这里插入图片描述
其中
tools:replace是依赖库属性冲突解决方案
当项目中依赖了其他第三方库时,若该第三方库中的组件属性与本地库发生了冲突,通过 tools:replace 可以实现被 tools:replace 声明的组件会覆盖第三方库中的属性,如果冲突的属性是多个,则用 , 隔开,如tools:replace="android:label,android:theme"
解决方案二

该方案则受限于这个第三方库是你自己的

如果属性不是必需在封装库中定义的,那么干脆就不要了,直接留给使用者自行定义,所以方案二我这边干脆直接把整个
application标签移除掉
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值