Gradle Cheat Sheet (13): Importing Gradle Projects
1. 在Android Studio中导入Gradle项目 首先建立一个简单的任务,建立gradle.build,加入: task tellJoke << { println "What's a build master's favorite black metal band?" println "Gradle of Filth!&…
Read more
learn, build, evaluate
1. 在Android Studio中导入Gradle项目 首先建立一个简单的任务,建立gradle.build,加入: task tellJoke << { println "What's a build master's favorite black metal band?" println "Gradle of Filth!&…
Read more
Gradle Wrapper可以自动下载特定版本的Gradle,使得用户不需要手动下载和安装Gradle,并确保所有人都能使用相同版本的Gradle来build当前项目。 可以使用wrapper 生成Gradle Wrapper: $ gradle wrapper Gradle Wrapper包含四个文件,一个.jar文件,一个.properties文件,用于Unix/Mac的Shel…
Read more
Gradle提供了对JUnit和TestNG的支持,只需启用Java插件,并把测试代码放在src/test/java,或者加到test代码集(Source Set)中。Source Set是Java插件引入的概念,是一组需要被一起编译和运行的代码,Java插件定义了两个标准代码集,main 和test ,前者用于包含生产代码,后者用于包含测试代码。如把mytest文件夹下的代码加入到test …
Read more
1. Working with Repositories 添加依赖前,首先要指定获取依赖的Repository。最基本的Repository就是一个放置jar文件的目录,称为Flat Directory Repository。所有关于Repository的配置都在repositories { } 块中进行,对于本地目录,只需添加一个flatDir 块,并指定Repository对应的目录,如添…
Read more
在Gradle中启用Java插件,只需在编译脚本中加入: apply plugin: "java" 此时运行: $ gradle tasks –all 会看到多出许多任务,常用的有assemble 、check 、build 和clean : Task name Depends on Type Description assemble All archive tasks …
Read more
1. Log Levels Gradle定义了6个log等级: ERROR Error messages QUIET Important information messages WARNING Warning messages LIFECYCLE Progress information messages INFO Information messages DEBUG Debug messa…
Read more
创建自定义任务类型有利于复用,只需创建一个类继承DefaultTask ,并用@TaskAction 标记实现任务行为的方法。如: class HelloTask extends DefaultTask { @TaskAction void doAction() { println 'Hello World' } } 之后可以通过type 指定使用自定义任务类型: task…
Read more
Gradle允许通过添加属性在脚本之外对build进行参数化。添加属性有两种方式:gradle.properties文件和命令行参数。 1. gradle.properties 建立gradle.properties文件,在其中加入: greeting=Hello from a properties file 然后在build.gradle中声明如下任务: task printGreeti…
Read more
1. 复制 在Gradle中复制文件,只需声明一个任务,并把type 设置为Copy : task copyTask(type: Copy) 使用from 和into 方法指定所要复制文件的来源文件夹和目标文件夹,如: task copyImages(type: Copy) { from 'images' into 'build' } 这里把imag…
Read more
1. dependsOn 任务A dependsOn 任务B,表示任务A只能在任务B完成之后进行。例如: task putOnSocks { doLast { println "Putting on Socks." } } task putOnShoes { dependsOn "putOnSocks" doLast { println "Pu…
Read more