gradle使用基础
说明
介绍gradle使用基础,gradle基础脚本结构和常规使用方法,以及一个简单的gradle示例.主要是为了简单的介绍gradle使用。
gradle环境配置
gradle可以通过两种方式运行gradle脚本:一种是通过配置系统gradle环境,运行gradle命令;一是通过gradle warpper配置临时gradle运行环境,通过脚本方式运行gradle命令。两种方式的效果相同,使得gradle的使用的成本更加方便。
1) 系统gradle配置
由于gradle常用于java工程的构建,所以gradle环境的配置需要依赖于java环境,需要先确认是否已经配置java运行环境,可以通过如下命令子啊dos命令框(windows)或者shell命令框(linux)中确认:
#:java -version
java version "1.8.0_101"
Java(TM) SE Runtime Environment (build 1.8.0_101-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.101-b13, mixed mode)
确认返回的话,
- 手动下载gradle的二进制文件
地址为:https://gradle.org/releases/ 选择binary-only,可以选择你希望安装的版本,版本尽量不要太高3左右即可,放置高版本对于某些插件的适配存在一些绑定性质的配置要求。
文件解压并配置系统环境变量
解压文件不再多说(linux下可通过uzip进行解压),若是linux系统需要将解压后文件的bin目录添加到PATH路径下,可以通过export设置临时配置也可直接在enviroment中添加永久配置,配置如下:
$GRADLE_HOME=/opt/gradle/gradle-3.0 #解压后的gradle路径
export PATH=$PATH:$GRADLE_HOME/bin可以将这两句话添加在~/.bashrc,~/.profile,/etc/profile文件的末尾,然后通过如下命令进行激活:
#source ~/.profilewindows环境的话,通过右键”计算机”——>”属性”———>”系统属性”———>”高级”
———>”环境变量”进入环境变量设置界面。- 新建一个用户变量,变量名:GRADLE_HOME,变量地址指向解压后的gradle的文件的根目录。如:”C:\Program Files\gradle\gradle-3.0”
- 在系统变量path的变量值头部添加”%GRADLE_HOME%\bin;”
2) gradle wrapper临时环境
gradle wrapper一般临时环境一般是通过脚本gradlew或者gradlew.bat(windows)通过命令下载环境依赖/gradle/wrapper/* 文件.
运行gradle时可直接通过将gradle用gradlew或者gradlew.bat替代操作.可通过
如下命令生成gradle wrapper环境,之后可以将该部分文件拷贝到任意一个未安装gradle环境的机器上实现gradle工程管理。
#gradle wrapper #生成wrapper临时gradle环境
简单的gradle 示例
为了方便理解gradle wrapper的使用,本示例通过gradle wrapper搭载gradle环境实现一个简单的hello world输出操作.操作步骤如下所示:
1) 构建gradle wrapper环境
hfcai@:~/root/gradlebasisProject#gradle wrapper
Starting a Gradle Daemon (subsequent builds will be faster)
:wrapper
BUILD SUCCESSFUL
Total time: 6.409 secs
hfcai@:~/root/gradlebasisProject# ll
总用量 28
drwxrwxr-x 4 caihaifei caihaifei 4096 7月 3 13:52 ./
drwxrwxr-x 11 caihaifei caihaifei 4096 7月 3 13:51 ../
drwxrwxr-x 3 caihaifei caihaifei 4096 7月 3 13:52 gradle/
drwxrwxr-x 3 caihaifei caihaifei 4096 7月 3 13:52 .gradle/
-rwxrwxr-x 1 caihaifei caihaifei 5242 7月 3 13:52 gradlew*
-rw-rw-r-- 1 caihaifei caihaifei 2260 7月 3 13:52 gradlew.bat
如上,完成wrapper环境搭建,之后管理工程可不用提交“gradle/”文件夹,直接通过”./gradlew wrapper”重新创建。
2) 创建build.gradle脚本
build.gradle脚本是默认运行的构建脚本,用于配置和编译工程。这里,我们只是简单的演示一下gradle的使用,根目录创建文件build.gradle,写入如下代码:
task sayHello << {
println "Hello World!"
}
project.afterEvaluate {
println "config project parameters over."
}
如上,task 为gradle最小的运行单元,上面代码创建了一个sayHello的task,project.afterEvaluate为当前工程配置完成的一个回调,上面所有代码均采用groovy闭包(Closure)的形式进行表达,如想要详细了解,需要了解基础的groovy语法(或会单独就此做一篇介绍)。通过如下命令运行task达到配置的最终结果:
hfcai@:~/root/gradlebasisProject# ./gradlew sayHello
config project parameters over.
:sayHello
Hello World!
BUILD SUCCESSFUL
Total time: 0.552 secs
参考代码:https://github.com/fishly/gradleProject/tree/master/gradlebasisProject
gradle使用基础的更多相关文章
- Gradle语法基础解析
在从ADT转移到AndroidStudio下开发,必然会遇到Gradle脚本打包的问题.看懂一个脚本最基本的前提就是了解它的语法,我在转移开发环境的过程中,也开始接触学习Gradle,在此做了一些总结 ...
- Gradle Groovy 基础语法 MD
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...
- 从头开始学gradle【Gradle 构建基础】
构建基础 Project 和 task:projects 和 tasks是 Gradle 中最重要的两个概念. 任何一个 Gradle 构建都是由一个或多个 projects 组成.每个 projec ...
- Gradle+Groovy基础篇
在Java项目中,有两个主要的构建系统:Gradle和Maven.构建系统主要管理潜在的复杂依赖关系并正确编译项目.还可以将已编译的项目以及所有资源和源文件打包到.war或.jar文件中.对于简单的构 ...
- Gradle脚本基础全攻略
http://blog.csdn.net/yanbober/article/details/49314255
- Android studio:Groovy 与 Gradle 基础【三】
转载:http://www.apkbus.com/forum.php?mod=viewthread&tid=255064&extra=page%3D2%26filter%3Dautho ...
- Android Studio系列教程四--Gradle基础
Android Studio系列教程四--Gradle基础 2014 年 12 月 18 日 DevTools 本文为个人原创,欢迎转载,但请务必在明显位置注明出处!http://stormzhang ...
- 【转】Android Studio安装配置学习教程指南 Gradle基础--不错
原文网址:http://www.linuxidc.com/Linux/2015-02/113890p4.htm 其实很早之前也写了一篇Gradle的基础博客,但是时间很久了,现在Gradle已经更新了 ...
- Gradle中的buildScript,gradle wrapper,dependencies等一些基础知识
就想收藏一篇好文,哈哈,无他 Gradle中的buildScript代码块 - 黄博文 然后记录一些gradle的基础知识: 1.gradle wrapper就是对gradle的封装,可以理解为项目内 ...
随机推荐
- PostgreSQL 表字段起别名
使用Postgreq Sql 表字段起别名时注意要用双引号,使用单引号会出现语法错误,执行结果如图
- 更改组织属性-以更改maxrecordsforexporttoexcel为例
关注本人微信和易信公众号: 微软动态CRM专家罗勇 ,回复232或者20161101可方便获取本文,同时可以在第一间得到我发布的最新的博文信息,follow me!我的网站是 www.luoyong. ...
- Eclipse的Git插件Egit: merge合并冲突具体解决方法
http://www.cnblogs.com/wavky/p/3504060.html 稍微总结下弄了半个下午的egit的merge合并冲突解决方法,网上看的都是一个模板出来的,看的糊里糊涂,花了很多 ...
- 使用docker简单搭建个人博客
首先介绍需要的yml文件,docker-compose.yml: version: '3.3' services: db: image: mysql:5.7 volumes: - db_data:/v ...
- mssql sqlserver 将逗号分隔的一列数据转换为多列数据的方法分享
转自:http://www.maomao365.com/?p=10278 摘要: 下文讲述sqlserver中将使用逗号组合的单列数据,分隔为多列数据的方法 实验环境:sql server 2012 ...
- 微信小程序——wx.navigateTo点击后没反应
首先,检查你跳转的目标路径是不是属于tabBar,若属于,且当前页面存在tabBar时,wx.navigateTo方法是失效的. 此时可用wx.switchTab方法,并记得在app.json中的&q ...
- docker搭建zookeeper集群
1.在官网拉取镜像 docker pull zookeeper 2.根据镜像启动zookeeper容器 docker run -itd --name zookeeper1 -h zookeeper1 ...
- 趣谈Linux操作系统学习笔记:第二十讲
一.引子 1.计算两方面的原因 2.内存管理机制 二.独享内存空间的原理 1.会议室和物理内存的关系 和会议室一样,内存都被分成一块块儿的,都编号了号,例如3F-10就是三楼十号会议室.内存页有这样一 ...
- 参数检查(@property)
绑定属性时,如果直接把属性暴露出去,虽然写起来很简单,但无法对参数进行检查,导致属性被随便修改 因此,可以通过在类内定义get()获取属性值,定义set()对属性值进行设定并对设定值进行检查 但通过定 ...
- 程序员,你还不会合理选择Filter、Interceptor、Aspect?
小伙伴们应该听说过过滤器.拦截器.切面,印象上都能够起到截断拦截的作用,在做一些业务需求时,不知道如何选择,今天老顾就来介绍一下他们之间的区别. 过滤器可以拦截到方法的请求和响应 (ServletRe ...