大家好,又见面了,我是你们的朋友全栈君。
这是一篇Gradle的入门教程
要解释Gradle是什么,首先要搞清楚一个名词——构建工具(Build Tool)。
构建工具,顾名思义就是用于构建(Build)的工具,构建包括编译(Compile)、连接(Link)、将代码打包成可用或可执行形式等等。
如果不使用构建工具,那么对于开发者而言,下载依赖、将源文件编译成二进制代码、打包等工作都需要一步步地手动完成。但如果使用构建工具,我们只需要编写构建工具的脚本,构建工具就会自动地帮我们完成这些工作。
java生态圈的三大构建工具:
buil.xml
文件来配置,需要搭配Apache lvy工具来实现网络依赖管理。 Ant是程序式的构建工具,需要自定义构建过程,优点是对于构建过程有良好的控制性prom.xml
文件来配置。但与Ant不同的是,Maven是申明式的构建工具,对目录结构有约束,不需要自定义构建过程,配置较为简单。Maven还具有生命周期,更重要的是Maven内置了依赖管理Gradle是一个开源的自动构建工具,它在设计之初就是为了能够灵活地构建几乎所有类型的应用。以下是他的一些重要特性:
task types
或甚至自定义build model
来拓展Gradle。例如Android的构建工具就引入了许多新的构建概念例如flavours和build types
Projects
和Tasks
是Gradle中最重要的两个概念。
我们用Idea新建一个用Gradle构建的Java工程,在右边的Gradle面板中就可以看到我们当前项目中的projects以及每个peoject中的tasks:(里面的tasks包括了Gradle内置tasks以及java插件的tasks)
还可以在命令行下执行gradle tasks
查看当前可执行的tasks
Gradle设计之初就是一个通用的构建工具,它允许你用它来构建任何应用,唯一的限制是Gradle的远程依赖管理目前仅支持Maven和Ivy的仓库
Gradle的构建模块是基于task的,Gradle要做的就是按照task之间的依赖关系来组织task按照合适的顺序运行
Gradle评估(evaluate)和指定构建脚本时有三个固定步骤:
这些步骤来自于Build Lifecycle
(详见后文)
虽然Gradle希望你仅通过Gradle内置的逻辑就可以完成构建,但这在实际中几乎是不可能的,所以Gradle提供了集中方式以供你来扩展它:
task types
task actions
projects
和tasks
中指定额外的属性conventions
custon model
这一节仅作介绍,后面的章节会详细讲述
Java构建工具:Ant vs Maven vs Gradle
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/154161.html原文链接:https://javaforall.cn