如果你用Android Studio开发,并且要用其他项目作为library,这个问题是很容易出现的。出现这个问题的原因是包的重复引用,意思就是在你自己的项目中引用了某个包,而被你作为library的项目也引用了同一个包,就会有这个问题。

那如何解决呢,我所知道的是有两种方法:

方法1:按照惯例,直接上图吧,从下图可以看到我在library中有加了一个v4的包,同时我将它作为dependencies,而在samples中也是一样有一个v4的包,同样的也需要将它作为dependencies,这个时候你去编译就会出现重复引用的问题:

那如何解决呢?

你可以直接修改gradle文件,也可以在上图中改,如下图所示:

在gradle文件中改,只需要将compile改成provided就行。

如果直接配置的话,也是一样的,在下拉框中选择provided。这里说明下,你只要改其中一个项目就可以了。


方法2:

使用这个方法有一个前提,就是你所引用的包在Library dependency中有,还是拿v4的包举例。

首先将v4的包从你的libs文件中删除,两个项目中都删除,然后再重新添加引用,这个添加方式如下,直接上图吧,按圈起来的红色框操作:


在弹出的对话框中选择v4包:


点击OK即可。注意这边两个项目都需要改成这种方式来引入v4包。

这个时候你两个引入的v4包的Scope就都可以使用compile了。而不需要将其中一个改成provided才可以编译过。当然你也可以不用上面的图形化操作方式,直接在gradle文件里面写也是一样的。

更多相关文章

  1. android 依赖工程 Android(安卓)工程引用其他Library工程
  2. 【Android】Android(安卓)Studio 使用第三方类库
  3. 我的Android之旅——学习、项目、心态
  4. Android小项目之十二 设置中心的界面
  5. Android(安卓)studio Gradle home can not be found - Android(
  6. 作为一个IOS\android开发者,转行到RN的理由,包括学习路线
  7. 开篇--基于Android的小巫新闻客户端开发
  8. Android开发者必须深入学习的10个应用开源项目
  9. Android开发环境迁移到Android(安卓)Stdio 3.5.2

随机推荐

  1. TextView中ellipsize属性
  2. android点滴(23)之android监听应用卸载
  3. Android(安卓)Studio 怎么添加使用第三方
  4. Android(安卓)ImageView的ScaleType属性
  5. android内核编译,终于ok了,总结之
  6. Android深入浅出系列课程---Lesson1 AAF1
  7. Android 数据通信
  8. Android 入门教程:安装 Android Studio
  9. Android启动流程分析(十二) SystemServer
  10. Android中的 View绘制流程及事件分发