概念
Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化构建开源工具。 它使用一种基于Groovy的特定领域语言(DSL)来声明项目设置,目前也增加了基于Kotlin语言的kotlin-based DSL,抛弃了基于XML的各种繁琐配置。
DSL:全称是Domain Specific Language,即领域特定语言,或者直接翻译成“特定领域的语言” 通俗点其实就是这个语言不通用,只能用于特定的某个领域,俗称“小语言”。因此DSL也是语言
Gradle不单单是一个配置脚本,它的背后更是三门语言的集成。
- 1、Groovy Language(基本)
- 2、Gradle DSL
- 3、Android DSL
常见的UML、XML也是DSL语言的一种。
DSL核心:求专不求全,解决特定问题
工具的进化:ANT->Maven->Gradle
Ant:最早的构建工具(2000年左右),基于idea,主要用于Java自动化构建,开始主要用来构建著名的Tomcat
Maven:专注的是依赖管理,不擅长构建操作
Gradle:自动化的构建工具,Gradle属于结合了Ant和Maven两者的优点,继承了Ant的灵活和Maven的生命周期管理