Android app依赖一个外部git 仓库,编译时下载。
在app所在的build.gradle中加入如下代码。
import org.ajoberstar.grgit.* task clone << { def destination = file("../../library") if( !destination.exists() ) { Grgit.clone(dir: file('../../library'), uri: 'git@git01.dds.com:liubin/gitlab_jira.git', refToCheckout: 'refs/heads/master') }else { def grgit = Grgit.open(dir: file('../../library')) grgit.pull(rebase: false) } } gradle.projectsEvaluated { preBuild.dependsOn(clone) }
在工程最上层的Build.gradle,加入如下代码
buildscript { repositories { mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:1.1.0' classpath 'org.ajoberstar:gradle-git:1.2.0' } }
在settings.gradle中加入如下代码
include ':lib_project' project( ':lib_project' ).projectDir = new File(settingsDir, '../library' )
完成如上操作之后,在运行gradlew assemble会自动clone仓库,如果目录存在,则会更新最新代码。
<p>版权声明:本文为博主原创文章,未经博主允许不得转载。</p>