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的封装,可以理解为项目内 ...
随机推荐
- 使用dom4j类操作xml文档
dom4j操作xml数据 1.Document对象相关 ①读取XML文件,获得document对象. SAXReader reader = new SAXReader(); Document docu ...
- SSM框架之Spring(4)AOP
Spring(4)AOP 1.AOP概述 在软件业,AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种 ...
- 推荐四个phpstorm酷炫实用插件 让你写代码的时候不在孤单!
程序员写代码很孤独,每天只能和电脑屏幕交流,想要一个程序员鼓励师妹子,老板又不给配,如何让自己写代码的时候不再孤单呢?今天给大家分享的这四个插件,既实用又好玩,还能提高开发效率,这四个插件主要用到ph ...
- ansible 流程控制
ansible 流程控制 使用when判断主机名 - hosts: rsync_server tasks: - name: Install rsyncd Server yum: name: rsync ...
- 打包Python文件为exe
pip install pyinstaller 然后就在终端里执行命令 cd 到目标文件的目录下 执行 pyinstaller -F ***.py 即可生成exe
- go语言设计模式之decorator
decorator.go package decorator import ( "errors" "fmt" ) type IngredientAdd inte ...
- PAT甲级|1151 LCA in a Binary Tree 先序中序遍历建树 lca
给定先序中序遍历的序列,可以确定一颗唯一的树 先序遍历第一个遍历到的是根,中序遍历确定左右子树 查结点a和结点b的最近公共祖先,简单lca思路: 1.如果a和b分别在当前根的左右子树,当前的根就是最近 ...
- jsp连接mysql出现不支持认证协议的解决办法
错误提示 com.mysql.jdbc.exceptions.MySQLNonTransientConnectionException: Client does not support authent ...
- 201871010132--张潇潇--《面向对象程序设计(java)》第十三周学习总结
博文正文开头格式:(2分) 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cnblogs.co ...
- 去除mysql里面重复的行并留下id最小的
DELETE FROM wynews WHERE title IN (SELECT * FROM (SELECT title FROM wynews GROUP BY title HAVING COU ...