环境搭建
-
前提:已经配置好Java环境
-
下载:
-
mac系统推荐使用brew安装:brew install gradle;
- 配置环境变量:
添加GRADLE_HOME/bin到环境变量PATH中: 命令行输入vim .bash_profile,添加下面代码:
GRADLE_HOME=/usr/local/Cellar/gradle/6.3PATH=${PATH}:${GRADLE_HOME}/binexport GRADLE_HOME PATH
保存后,执行source .bash_profile
- 验证:终端/命令行 输入:gradle -v
Hello World
-
新建目录GradleCode
$ mkdir GradleCode
-
在该目录下创建文件build.gradle
subl build.gradle //sublimetext编辑器打开文件,不存在则创建 或 vim build.gradle //vim编辑器打开文件,不存在则创建
-
并进行编辑,输入如下内容,并保存:
task hello{ doLast{ println'hello world' }}
-
在GradleCode下执行终端命令:
gradle -q hello(注:-q用于控制log级别)
执行gradle命令时默认会加载当前目录下的build.gradle文件,可通过-b 参数指定要执行的文件
gradle -q hello -b hello.gradle
Gradle Wrapper
顾名思义,是对gradle的一层包装,便于团队开发时统一gradle版本; gradle提供内置的wrapper task帮助我们生成wrapper文件,在项目根目录输入下面命令即可:
$ gradle wrapper//指定版本$ gradle wrapper --gradle-version 6.3
生成的文件中gradle-wrapper.properties是配置文件,用于配置gradle版本等
# 文件路径:/Users/ljy/GradleCode/gradle/wrapper/gradle-wrapper.properties
# 文件内容:
#gradle存储的主目录
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
#gradle wrapper依赖的gradle版本的下载地址
distributionUrl=https\://services.gradle.org/distributions/gradle-6.3-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
- 自定义wrapper task
build.gradle中加入如下代码
wrapper{
gradleVersion='5.6.4'
}
在执行 gradle wrapper就会生成5.6.4版本的wrapper,不用再--gradle-version指定了
日志级别
-
error:错误消息
-
quiet:重要消息
-
warning:警告消息
-
lifecycle:进度消息
-
info:信息消息
-
debug:调试消息
task printlog{
doLast{ logger.quiet('quiet日志信息') logger.error('error日志信息') logger.warn('warn日志信息') logger.lifecycle('lifecycle日志信息') logger.info('info日志信息') logger.debug('debug日志信息')
} }$ gradle printlog quiet日志信息 error日志信息 warn日志信息 lifecycle日志信息
$ gradle -q printlog quiet日志信息 error日志信息
-
-s或--stacktrace:输出关键性的堆栈信息
-
-S或--full-stacktrace:输出全部堆栈信息
一般用-s即可
gradle命令行
-
帮助:gradle -? , gradle -h , gradle -help
-
查看所有可执行的task:gradle tasks ,gradle tasks --all
-
gradle help任务显示帮助信息:gradle help --task hello
-
强制刷新依赖,如maven这类仓库都是有缓存的,可通过--refresh-dependenies参数强制刷新,如:在AndroidStudio项目下执行
gradle --refresh-dependencies assemble
-
多任务执行:gradle hello printlog, gradle printlog hello
我是今阳,如果想要进阶和了解更多的干货,欢迎关注公众号”今阳说“接收我的最新文章