01 Gradle 入门-Gradle 背景和介绍
在生活中,咱们看电影时,总会在开头看到一段介绍,特别是一些魔幻片,其作用就是在为故事的发展提供依据,给观众留下悬念.而 Gradle 作为新工具,咱们也需要来介绍下它的背景,给初学者留下学习的动力.接下来我就要发力了.请把我的力量带走 ! ! !
项目构建历史
随着时代的进步,技术的发展,项目的构建变得越来越轻松方便.而对于一个老牌的程序员来说,项目的构建历史还是很有发言权的.以下咱们就来看下项目构建的发展历程.
石器时代
- 依赖管理
最开始的时候如果需要依赖第三方的 jar 包,需要把 jar 放到项目下的 lib 目录中, 如果 jar 包多了不好管理,很容易出现版本冲突问题.每个项目需要使用到同一个 jar 包都得拷贝一份到项目中,麻烦且占用存储空间.
- 测试
每个功能都需要书写主方法测试,在 main 中写测试非常麻烦,能不写一般都是不会写,就算写了也是很简单的测试下而已.
- 打包
通过 eclipse 等 IDE 打包然后传递到服务器或者放入依赖的项目中.麻烦,繁琐
- 依赖 jar 上传
通过一些文件上传工具(FTP) 上传 jar 包到依赖的项目下.
通过以上几点的描述咱们可以得知,石器时代的项目构建更多的是依赖人力,操作比较频繁且不能省略.像这种重复而又没有技术含量的操作是很无聊的.电脑都看"哭"了!!! 于是乎就有了构建工具的出现.这时候电脑终于可以再次证明它的 nb 了.
那构建工具又有什么作用或者说突破呢?
以下咱们就来看下工业时代的构建工具
工业时代的构建工具
构建工具的作用:
- 依赖管理
可以做依赖管理,将 jar 包统一管理起来,更加的清晰和方便,而且仅仅是依赖,没有拷贝 jar 包到项目中.
- 自动化
可以自动测试 \ 打包 \ 发布
开发原则: 机器能做的事情,绝不自己动手去做,能大大提高开发效率. 解放双手,才能拥抱女朋友.
以上咱们已经知道构建工具可以让咱们多拥抱女朋友. 哦~ 不~ 是解放双手.那主流的构建工具有哪些呢? 请看主流构建工具介绍.
主流的构建工具
- Ant ( Apache Ant) :
软件编译、测试、部署等步骤联系在一起加以自动化的一个工具,大多用于Java 环境中的软件开发。
- Maven (Apache Maven)
从 Ant 中借用了绝大多数构建任务,其突出的是依赖管理和项目发布
- Gradle
使用 Groovy 语言 构建脚本,不再像 Maven一样使用 XML
到这里,咱们的主角已经闪亮登场了,接下来让它做个自我介绍.
Gradle 介绍
一个开源的项目自动化构建工具,建立在 Apache Ant 和 Apache Maven 概念的基础上,并引入了基于 Groovy 的特定领域语言(DSL),而不再使用 XML 形式管理构建脚本.
DSL(Domain Specific Language)定义:针对某一领域,具有受限表达性的一种计算机程序设计语言。只针对一个领域做出来的简洁语言,而非为了通用而设计.
到这里,咱们已经知道 Gralde 依赖 Groovy 语言,那 Groovy 又是啥? 能做什么? 怎么用? 请看下一篇,Groovy 的介绍