同步发表于http://avenwu.net/2015/02/12/androidstudio_library_dependencyandroid
Fork on github https://github.com/avenwu/supportgit
今天刚升级了AndroidStudio到1.1 RC 1,从其一年前刚推出的时候就果断从Eclipse转投AndroidStudio,整体来讲选择是对的,虽然期间遇到过不少问题,但也正由于如此对AndroidStudio的不少配置有很多理解。github
有时候咱们会开发一些平台库项目,好比笔者写了一个support的Android库,用于记录这个理平时写的一些测试代码和自定义的东西,因此这个项目包含了sample和support两部分,如今我有另一个项目A,也想开始依赖于support,怎么作比较合适。app
先来看以一下目录结构:maven
Support |-sample |-support A Project |-app |-library
若是我已经将Support/support发布值maven,那么一切都没问题,直接用gradle添加依赖;可是因为support处于随时开发改变中,并不适合发布。测试
直接copy一份到A Project确定是不行的,由于这样就存在两个副本要维护。gradle
解决办法就是手动配置依赖库的位置:ui
include ':app', ':library', ':support' project(':support').projectDir = new File(rootDir, "../support/support")
打开setting.gradle,包含support,而后指定其项目位置,我这里用的是相对路径。
剩下的就是在app的build.gradle里配置依赖了.net
compile project(':support')
最后同步一下gradle,support会出如今左侧的导航面板中,就能够正常使用support中的资源了。code
这个方法相对来讲既简单又实用,关键在于配置support的路径,这和Eclipse中的操做实际上是相似的,只不过AndroidStudio目前并有有可视化的方法来添加目录并不在项目以内的库,因此须要本身手动配置。