标签:android gradle android studio
Android Studio使用
Gradle
构建项目
为什么要用Gradle?
Gradle是比较先进的构建系统,也是一个很好的构建工具,允许通过插件自定义构建逻辑
为什么Android Studio选择Gradle?
GRADLE_HOME
环境变量来制定Gradle的安装目录GRADLE_HOME\bin
到path环境变量中gradle -v
你可以通过
gradle
命令运行一个Gradle构建.gradle
命令会在当前目录中查找一个叫build.gradle
的文件. 我们称这个build.gradle
文件为一个构建脚本 (build script),但是严格来说它是一个构建配置脚本 (build configuration script). 这个脚本定义了一个 project 和它的tasks.
task hello{
doLast{
println ‘Hello world!‘
}
}
进入文件所在目录, 运行命令 gradle -q hello
输出:
这个构建脚本定义了一个独立的 task,叫做hello, 并且加入了一个 action. 当你运行 gradle hello, Gradle 执行叫做 hello 的 task, 也就是执行了你所提供的 action. 这个 action 是一个包含了一些 Groovy 代码的闭包.
-q
: 代表quite模式.它不会生成 Gradle 的日志信息 (log messages), 所以用户只能看到tasks 的输出. 它使得的输出更加清晰. 你并不一定需要加入这个选项.
task hello << {
println ‘Hello world!‘
}
与前面的例子比较, doLast 被替换成了 << 它们有一样的功能, 但看上去更加简洁了
task upper << {
String someString = ‘my_name‘
println "Original: " + someString
println "Upper case: "+ someString.toUpperCase()
}
运行: gradle -q upper
结果:
在 Gradle 任务里使用 Groovy
task count << {
4.times { print "$it " }
println ""
}
输出:
task hello << {
println "Hello World!"
}
task intro(dependsOn: hello) << {
println "I‘m Gradle"
}
运行: gradle -q intro
结果:
intro 依赖于 hello, 所以执行 intro 的时候 hello 命令会被优先执行来作为启动 intro 任务的条件.
在加入一个依赖之前, 这个依赖的任务不需要提前定义, 来看下面的例子
task taskY(dependsOn: ‘taskX‘) << {
println "taskY"
}
task taskX << {
println "taskX"
}
版权声明:本文为博主原创文章,未经博主允许不得转载。
标签:android gradle android studio
原文地址:http://blog.csdn.net/hpu_zyh/article/details/47430623