gradle , maven , ant , ivy , grant之间的区别

java项目构建工具

gradle

Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化构建开源工具。

它抛弃了基于XML的各种繁琐配置。它使用一种基于Groovy的特定领域语言(DSL)来声明项目设置,目前增加了基于Kotlin语言的kotlin-based DSL

面向java 应用为主, 支持groovy, kotlin, c++, scala 和swift语言

gradle 的整体设计是以作为一种语言为导向, 而非严格死板的框架

gradle是第一个集成构建工具, 与ant, maven, ivy 有良好的相容性

是android的官方构建工具

android 工程中的gradle

    工程Project 中的 build.gradle : 工程控制Gradle编译配置
    模块module中的 build.gradle : 控制每个Module的编译过程
    gradle.properties : gradle动态参数的配置文件
    local.properties : 本地的配置,如:SDK位置
    gradle-wrapper.properties :gradle本地代理,声明了指向目录和版本
    distributionUrl : 指定gradle版本不存在时,就从Value的地址中去下载。很多时候,我们只要版本换成我们本地存在的gradle版本就可以了
    settings.gradle : 配置Gradle中的Module管理

 

ant (another neat tool)

核心代码是由java编写, 构建脚本是xml (build.xml), 作为项目管理工具

ant本身没有依赖管理,需要配合ivy来管理依赖

 

maven

目标是改进使用Ant时面临的一些问题, 继承了ant 的项目构建功能, 采用xml作为构建脚本格式

maven 具有依赖管理和项目管理的功能, 提供了中央仓库

pom.xml

 

gant

基于ant的构建工具,  在ant 的基础上用groovy写的DSL.

如果使用Ant实现构建,但是不喜欢xml来编写构建脚本的, 那么gant就是个不错的选择

这个build.gant等同于此前Ant的bulid.xml

 

posted @ 2022-01-09 12:25  binbin_cloud  阅读(390)  评论(0编辑  收藏  举报