Android开发:《Gradle Recipes for Android》阅读笔记1.5
Posted tootwo2
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android开发:《Gradle Recipes for Android》阅读笔记1.5相关的知识,希望对你有一定的参考价值。
这节讲的是如何如何添加JAVA依赖库。
默认的android项目有两个build.gradle文件,分别位于顶级目录,和应用自己的目录下(通常放在一个叫app的目录下面)。
gradle支持多种方式列举依赖库,最常用的方式是用引号包括,冒号分割group,name,version的方式。(gradle是使用Groovy的,所以支持单双引号字符串,后面章节会详细讲)
每个依赖都会和某个配置关联。android项目包括compile,runtime,testCompile和testRuntime配置。插件可以增加额外配置,并且你可以自定义。
语法
完整语法你可以明确的定义group,name,version,如 testCompile group:\'junit\',name:\'junit\',version:\'4.12\'
简略语法,和完整的是一样的,如 testCompile \'junit:junit:4.12\'
还有种合法但是不推荐的写法,在版本后面加上\'+\',如 testCompile \'junit:junit:4.+\',告诉gradle需要4.0及以上版本。当它运行的时候,会不明确导致不可服用。明确的版本号可以帮助你避免以后版本中的一些API的改动的影响。
如果想添加一组文件到配置,不通过将他们添加到仓库,你可以在dependencies模块下使用files或者fileTree语法。例如:
dependencies{
compile files(\'libs/a.jar\',\'libs/b.jar\')
compile fileTree(dir:\'libs\',include:\'*.jar\')
}
同步项目
当gradle的配置文件修改时。android studio会提示同步(sync now),如果没有及时同步,也可以通过菜单栏的按钮同步更新gradle配置。
递归依赖
gradle和maven一样可以下载库依赖的其他库,命令行下输入./gradlew androidDependencies可以查看依赖关系
gradle默认传递依赖,如果想对一个库关闭依赖,可以通过transitive标志,如
dependencies {
runtime group: \'com.squareup.retrofit2\', name: \'retrofit\', version: \'2.0.1\',transitive: false
}
如果只想要引入一个模块的jar,也可以特殊指出,如:
dependencies { compile \'org.codehaus.groovy:groovy-all:2.4.4@jar\' compile group: \'org.codehaus.groovy\', name: \'groovy-all\',version: \'2.4.4\', ext: \'jar\'
}
上面是简略写法,下面是完整语法。简略中使用@增加一些额外值。
也可以排除引入的库下面的一些递归依赖,如:
dependencies { androidTestCompile(\'org.spockframework:spock-core:1.0-groovy-2.4\') {
exclude group: \'org.codehaus.groovy\'
exclude group: \'junit\' }
}
}
以上是关于Android开发:《Gradle Recipes for Android》阅读笔记1.5的主要内容,如果未能解决你的问题,请参考以下文章
Android开发:《Gradle Recipes for Android》阅读笔记1.5
Android开发:《Gradle Recipes for Android》阅读笔记(翻译)2.4——更新新版本的Gradle
Android开发:《Gradle Recipes for Android》阅读笔记1.2
Android开发:《Gradle Recipes for Android》阅读笔记(翻译)2.5——在项目中共享配置