今天,边肖将分享一篇关于Gradle快速安装和入门的文章。边肖认为内容相当不错。现在分享给大家,有很好的参考价值。有需要的朋友一起看看吧。
1、什么是Gradle
Gradle是下一代构建工具,结合了Ant和Maven的优点。它既有Ant的构建灵活的优点,又保持了Maven契约优于配置的思想,在灵活构建和契约构建之间取得了很好的平衡。
2、安装Gradle
(1)Gradle属于解压配置后即可使用的软件。
下载并解压gradle-4.1-all.zip,例如:D:/gradle-4.1
(2)在2)窗口中设置gradle环境变量:
GRADLE_HOME D:/gradle-4.1
PathD:/gradle-4.1/bin(或:%GRADLE_HOME%bin)
(3)启动-运行-cmd并输入以下命令:gradle-v
3.Gradle构建脚本
每个gradle构建脚本都包含三个基本构建块:项目、任务和属性。每个构建包含至少一个项目,而项目又包含一个或多个任务(项目和任务可以分别理解为Ant构建工具中的项目和目标标签)。项目和任务公开的属性可用于控制构造。project本身附带了许多任务,并通过引入新的插件来引入新的任务。任务包含执行项目构造的各种构造方法,例如清理、构建和其他常见的构造方法。
(1)创建一个空白的build.gradle构建脚本。
项目目录结构(如果demo是D:demo):
演示
|-build . gradle(D: demo build . gradle)
执行以下命令:
d: demo grade任务
执行结果输出:
(2)创建一个包含java插件的构建脚本。
项目目录结构(如果demo是D:demo):
演示
|-build . gradle(D: demo build . gradle)
Build.gradle构建脚本内容:
应用插件:“java”
执行以下命令:
d: demo grade任务
执行结果输出(部分):
总结:对比上面两个构建脚本gradle tasks命令的输出结果,带apply plugin的构建脚本: java 插件有更多的构建任务等任务。从第二个Build tasks任务中,我们可以看到gradle的常用命令Build、clean等。所以我们可以知道,通过引入插件,可以增加相应的构建功能。
4、Gradle案例实战
(1)基于因配置而产生的协议构建项目。
基于协议的项目目录结构图(与maven默认目录结构一致):
Gradle采纳了Maven约定优于配置的思想。只要遵循一定的项目目录结构,构建插件就会自动找到构建项目需要构建的文件,构建就是这么简单。以下是标准的项目目录结构
项目目录结构(如果demo是D:demo):
演示
| - src
| -主要
| - java
| - com
| -你好
|-hello . Java(D: demo src main Java com hello hello . Java)
| -资源
| -测试
| - java
| -资源
|-build . gradle(D: demo build . gradle)
Hello.java内容(只是一个简单的java类,可以随意编写)
公共类Hello{
公共静态void main(String[] args){
system . out . println( hello ant );
}
}
Build.gradle内容(只需要引入java插件)
应用插件:“java”
在命令行上执行gradle clean build命令后,输入D:demo目录的目录结构:
将生成标准的生成输出目录
演示
| -构建
| -类别
| - java
| -主要
| - com
| -你好
|-hello . class(D: demo build classes Java main com hello hello . class)
| -图书馆
|-hello . jar(D: demo build libs hello . jar)
| - src
| -主要
| - java
| - com
| -你好
|-hello . Java(D: demo src main Java com hello hello . Java)
| -资源
| -测试
| - java
| -资源
|-build . gradle(D: demo build . gradle)
(2)建设项目的灵活定制
在构建历史遗留项目时,由于项目目录结构的高度自由度,gradle可以通过简单的配置完成项目的构建。
以下是非标准项目目录结构(Hello.java不在标准目录中):
项目目录结构(如果demo是D:demo):
演示
| - src
| - com
| -你好
|-hello . Java(D: demo src com hello hello . Java)
|-build . gradle(D: demo build . gradle)
Build.gradle内容(您可以通过简单地指定源文件目录和编译后的输出目录来自定义构建)
应用插件:“java”
源集{
主要{
java
Sr IRS=[ src ]//指定java源文件目录是src,而不是默认的src/main/java。
}
}
}
ddir= out //指定输出目录是out,而不是默认生成
在命令行上执行gradle clean build命令后,输入D:demo目录的目录结构:
输出目录名为out,但out中的编译文件目录是根据标准生成的。
演示
| -出去
| -类别
| - java
| -主要
| - com
| -你好
|-hello . class(D: demo out classes Java main com hello hello . class)
| -图书馆
|-hello . jar(D: demo out libs hello . jar)
| - src
| - com
| -你好
|-hello . Java(D: demo src com hello hello . Java)
|-build . gradle(D: demo build . gradle)
通过以上两个简单的java项目(基于配置的契约式构造项目和灵活定制的构造项目),可以清晰地展示gradle基于契约式构造的简单性和快速性,以及制定构造的灵活性。
5.Gradle的优点和缺点
优点:基本集合了以往项目搭建工具(Ant和Maven)的所有优点,是搭建工具的首选。
缺点:理解和学习成本相对较高
6、Gradle的特性
Gradle使用Groovy作为脚本语言的构建工具,Groovy是一种基于JVM的动态语言,与Java有着内在的兼容性。你甚至可以在构建脚本中编写Java程序。
Gradle不像Ant和Maven那样用xml写脚本,它用的是Groovy,也就是说你写脚本的时候,更像是写一个程序,而不是写满了尖括号难以阅读的xml文件。
Gradle和Maven一样,遵循协议优于配置的原则,也就是说只要你的项目是按照标准协议构建的,你只需要做简单的配置就可以构建你的项目。
Gradle支持现有的Maven仓库,所以你可以很好的利用Maven上的所有库。
Gradle支持依赖转移,也就是说当库A依赖库B时,你只需要引用库A,Gradle就会自动帮你依赖库B。
总结
这就是本文的全部内容。希望这篇文章的内容对你的学习或工作有一定的参考价值。谢谢你的支持。如果你想了解更多,请查看下面的相关链接。