Gradle 的使用和配置

Java 作为一门世界级主流编程语言,有一款高效易用的项目管理工具是 Java 开发者共同追求的心愿和目标。
先是 2000 年 Ant,后有 2004 年 Maven 两个工具的诞生,都在 Java 市场上取得了巨大的成功。但是二者都有一定的不足和局限性。

mark

Gradle 简介

2012 年基于 Ant 和 Maven 产生的 Gradle,弥补了 Ant 和 Maven 的不足,带来了一些更高效的特点。它使用一种基于 Groovy 的特定领域语言 (DSL) 来声明项目设置,抛弃了基于 XML 的各种繁琐配置。面向 Java 应用为主。当前其支持的语言限于 Java、Groovy 和 Scala,计划未来将支持更多的语言。

Gradle 安装配置 (Windows 版)

很简单,下载之后解压,需要把目录配置到环境变量中:配置 GRADLE_HOME,然后在 PATH 中添加配置:% GRADLE_HOME%\bin,打开命令行:

mark

出现上图即是配置成功

Gradle 和 idea 集成

对于 IDEA 2019.3 无需集成,只要配置了 GRADLE_HOME 环境变量,一切都是自动的

Groovy 语言简单介绍

mark

先打开上面的命令行,接下来开始学习 groovy 编程语言

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
// 介绍 groovy 编程语言 
println ("hello groovy")

println "hello groovy!"

//groovy 定义变量
def i = 18
println "i = " + i

// 定义集合类型
def list = ['a', 'b', 'c']

// 往 list 里面添加元素
list << 'd'

// 取出第三个元素
println "list.get (3) = " + list.get (3)

// 定义一个 map
def map = ['name': 'Tim', 'age': 18]
// 向 map 中添加 K-V
map.sex = ' 男 '

println map

点击右上角的箭头即可执行

mark

Groovy 的闭包

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// 介绍 groovy 的闭包 
// 闭包的概念:闭包其实就是一段代码块在 gradle 中把闭包当作参数使用

def b1 = {
println ("Hello b1")
}

// 定一个方法,方法里需要闭包类型的参数
def method1 (Closure closure){
closure ()
}

// 调用方法 method1
method1 (b1) // 输出:Hello b1

// 带参数的闭包
def b2 = {
v ->
println ("Hello ${v}")
}
// 定一个方法,方法里需要闭包类型的参数
def method2 (Closure closure){
closure ("Tim")
}

method2 (b2) // 输出:Hello Tim

Gradle 仓库的配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
plugins {
id 'java'
}

/**
* 自己填写的一些信息
*/
group 'xpu.edu'
version '1.0-SNAPSHOT'


sourceCompatibility = 1.8

/**
* 指定所使用的参数仓库路径
* mavenCentral () 表示使用中央仓库,从中央仓库下载到指定目录
*/
repositories {
// 先从本地仓库寻找依赖,如果没有再从中央仓库下载
mavenLocal ()
mavenCentral ()
// 如果只设置中央仓库,表示直接从中央仓库下载 Jar 包
}
/**
* Gradle 工程的所有的 Jar 包的坐标都在 dependencies 属性内放置的
* 每个 Jar 包的坐标都有三个基本元素组成
* group、name、version 这和 maven 是一致的
* testCompile 表示该 Jar 包在测试的时候使用,也就是 Jar 包的作用域
* 我们在 Gradle 里面添加坐标的时候都要添加作用域
*/
dependencies {
compile group: 'com.alibaba', name: 'fastjson', version: '1.2.58'

compile group: 'mysql', name: 'mysql-connector-java', version: '8.0.19'
testCompile group: 'junit', name: 'junit', version: '4.12'
}

如何设置本地仓库呢?

只需要设置 GRADLE_USER_HOME 这个环境变量即可,把 GREADLE_USER_HOME 环境变量设置到自己本地的 Maven 仓库路径即可!

配置阿里云仓库

1
2
3
4
5
repositories {
maven {
url "http://maven.aliyun.com/nexus/content/groups/public/"
}
}

这样配置是对当前工程生效,但是新建 Gradle 工程后又需要在配置一次

所以需要在 Gradle 的安装目录下的 init.d 文件夹里新建一个名称为 init.gradle 的文件,写入如下内容

1
2
3
4
5
6
7
8
allprojects {  
repositories {
maven {
name "aliyunmaven"
url "http://maven.aliyun.com/nexus/content/groups/public/"
}
}
}