依赖仓库
预定义依赖仓库
Gradle预定义了三个Maven仓库,默认情况没有为项目添加任何依赖仓库,需要手动添加至repositories
代码块。一个依赖由group
,name
和version
组成。
repositories {
jcenter()//为第二个的超集
mavenCentral()
mavenLocal()
}
本地Maven仓库为已使用的依赖的本地缓存,位置在~/.m2.
远程仓库
当依赖在自有地Maven或Ivy服务器上时,应添加仓库url
repositories {
maven{
url "http://repo.abc.com/maven2"
credential{
username 'abc'
password '123'//凭证会纳入版本控制系统,应使用单独的Gradle属性文件配置
}
ivy{
url "http://repo.abc.com/ivy"
}
}
本地仓库
当在自己的硬盘或网络驱动器上运行Maven和Ivy时,配置一个相对或绝对的URL即可
repositories {
maven{
url "./repo"
}
}
当使用SDK manager安装Google repositories时, 会创建两个Maven仓库,ANDROID_SDK/extras/google/ m2repository
和 ANDROID_SDK/extras/android/m2repository
也可以添加文件夹作为仓库
repositories {
flatDir {
dirs 'aars'
}
}
本地依赖
文件依赖
dependencies {
compile files('libs/domoarigato.jar')
}
dependencies {
compile fileTree('libs')
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
}
依赖项目
- 当作一个模块
模块中使用Android插件
apply plugin: 'com.android.library'
settings.gradle中添加该模块
include ':app', ':library'
添加依赖
dependencies {
compile project(':library')
}
- 使用aar文件
添加仓库
repositories {
flatDir {
dirs 'aars'
}
}
添加依赖
dependencies {
compile(name:'libraryname', ext:'aar')
}
依赖概念
- compile
- apk
- provided
- testCompile
- androidTestCompile