Android Studio多工程引用同一个library项目配置方法

来源:互联网 发布:怎么更改自己淘宝网址 编辑:程序博客网 时间:2024/05/16 12:24

 转自 http://www.wxtlife.com/2015/12/17/Android-studio-quote-same-lib/?utm_source=tuicool&utm_medium=referral

Android Studio多工程引用同一个library项目配置方法

在使用Android Studio 开发中,如遇到多个项目引用同一个library(源码)的情况时,会遇到在每个项目中都要有一套library的代码,对还在开发和维护中的library需要频繁的修改,这对同步就很麻烦了,下面提出以下方法供选择。当然最后会给出最合理的解决办法。

第一种方法是对library向每个引用的项目建立软连接。这样修改就会对每个引用同步修改.这种方法就是看起来会很臃肿,如果要引用多个library就很痛苦。

第二种就是maven 仓库的方式,将所有的library都上传到maven仓库,然后在各个工程中进行引用,当然这种是对稳定的library来说是最好的一种方式,但对于library需要开发和修改的就不太适合了。

第三种就是将所以的library作为一个工程使用,然后将所有的library都放入此工程中,然后在其他引用library的工程中,引入新建的工程,这样看起来和eclipse 引用library的结构就很像了,且可以放入多个library都不影响。下面就来看看这种解决方法,该如何实现。

  • 首先新建一个工程,注意是工程,不是Stuio里面的Module,起一个容易理解的工程名称CommonLibrary
  1. 将需添加的library添加进CommonLibrary中,记得每个library也是需要有build.gradle文件的,且配置项正确。
  2. 在需要引用的的工程中,需要在settings.gradle文件中添加引用代码如下:

    1
    include ':CommonLibrary'project (':CommonLibrary').projectDir = new File('../CommonLibrary/')include ':CommonLibrary:CommonsA'

    其中CommonsA为项目要使用的公共library名称
    然后在我们项目实际的model中修改build.gradle文件,需要在dependencies中添加下面的代码。CommonsA和CommonsB都是要要引用的项目。

    compile project (':CommonLibrary:CommonsA')compile project (':CommonLibrary:CommonsB')

    我在测试时发现不能写成上边这样,而是应该写成compile project (':CommonLibrary')就可以了,要不会报“configuration with name default not found"这个错误

至此多个工程引用同一个lib的方法就基本完成,配置玩后sync下,然后build,看是否成功。

最终测试通过,还是很高兴的。gradle太强大了。


compile project (':CommonLibrary:CommonsA')compile project (':CommonLibrary:CommonsB')

0 0
原创粉丝点击