引言
Android Studio默認打出的aar只會包含本工程的源代碼,不會攜帶library依賴的源碼;但是我們常用的一些依賴庫一般都是帶依賴關系的(通過設置transitive = true
,來透傳依賴樹)。下面講解下這種帶依賴關系的aar是怎么生成的
代碼
apply plugin: 'com.android.library'
apply plugin: 'maven'
apply plugin: 'maven-publish'
apply plugin: 'me.vigi.fat-aar'
buildscript {
repositories {
jcenter()
maven {
url "http://dl.bintray.com/vigidroid/maven"
}
}
dependencies {
classpath 'me.vigi:fat-aar-plugin:0.2.8'
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:26.1.0'
embed 'com.google.auto.service:auto-service:1.0-rc2'
embed 'com.squareup:javapoet:1.7.0'
}
如上代碼,已經有人寫了一個專門的插件,來完成這個功能;對于想要帶依賴關系的三方庫,可用embed
的方式引入。三方插件Github地址