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的封装,可以理解为项目内 ...
随机推荐
- Python中的常见特殊方法—— repr方法
在Python中有些方法名.属性名的前后都添加了双下划线,这种方法.属性通常都属于Python的特殊方法和特殊属性,开发者可以通过重写这些方法或者直接调用这些方法来实现特殊的功能.其实前面见过的构造方 ...
- Flask 教程 第七章:错误处理
本文翻译自The Flask Mega-Tutorial Part VII: Error Handling 这是Flask Mega-Tutorial系列的第七部分,我将告诉你如何在Flask应用中进 ...
- SSM框架之Mybatis(5)数据库连接池及事务
Mybatis(5)数据库连接池及事务 1.Mybatis连接池 Mybatis 中也有连接池技术,但是它采用的是自己的连接池技术.在 Mybatis 的 SqlMapConfig.xml 配置文 ...
- 剑指offer 25:二叉树中和为某一值的路径
题目描述 输入一颗二叉树的根节点和一个整数,打印出二叉树中结点值的和为输入整数的所有路径.路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径.(注意: 在返回值的list中,数组长度大 ...
- js 记一次带时间的表单提交报400错误
写一个功能的时候,表单里不填时间提交的时候,数据就正常传到后台了,一填上时间就报400错误,看了后台时间的处理也没问题,看了前端时间控件返回的格式也对,但是就是一直报错, 把提交的数据打印出来也没发现 ...
- Oracle impdp导入数据临时表空间与undo表空间爆满解决实例
Oracle impdp导入数据临时表空间与undo表空间爆满解决实例 [日期:2018-01-24] 来源:Linux社区 作者:rangle [字体:大 中 小] 针对Oracle数据迁移, ...
- Linux自动同步时间
一.安装时间同步工具 yum -y install ntp 二.同步时间 1.修改时区 cp -y /usr/share/zoneinfo/Asia/Shanghai /etc/localtime v ...
- 004.MongoDB数据库基础使用
一 数据库管理 1.1 创建数据库 [root@uhost ~]# mongo --host 172.24.9.225 --port 27017 -u useradmin -p useradmin & ...
- WPF 在使用 ItemsSource 之前,项集合必须为空
原文:WPF 在使用 ItemsSource 之前,项集合必须为空 <DataGrid x:Name="datagrid" ItemsSource="{Bindin ...
- Java并发编程:Java实现多线程的几种方式
在Java中,多线程主要的实现方式有四种:继承Thread类.实现Runnable接口.实现Callable接口通过FutureTask包装器来创建Thread线程.使用ExecutorService ...