Gradle之恋-一见倾心

作者: 翟前锋 | 来源:发表于2017-03-01 17:23 被阅读36次

    概述

    第一次遇见Gradle是在三年前,印象最深的一句话是“Gradle:下一代构建工具”,我就深深地知道Gradle是属于我的菜。直到两年前我转到Java阵营,我开始默默关注Gradle但并不急着去使用。因为团队使用的构建工具是Maven,而且Gradle太年轻不够沉稳。

    直到发现谷歌使用Gradle构建Andriod项目、Hibernate和Junit5也开始使用Gradle构建,连Spring也投入了Gradle的怀抱,我意识到Gradle经历了各种历练,已经成年了,与其一起燃烧青春年华的时机已经到来。


    gradle

    <small>这让我想起了一首歌的歌词</small>

    <small>只因为在人群中多看了你一眼
    再也没能忘掉你的容颜
    梦想着偶然能有一天再相见
    从此我开始孤单地思念
    ......</small>

    特性

    Gradle号称下一代自动化构建工具,不仅能够自动化构建、打包、测试、发布、部署等,还能方便生成各种文档,具有许多实用的功能和优异的特性。它具有像Ant一样的任务(task),又具有Maven一样的约定,但又基于丰富可扩展的DSL(Domain Specific Language)使其灵活。

    基于Apache Ivy强大的依赖管理,有完全兼容Maven和Ivy仓库,同时也提供了本地Jar和文件夹的依赖管理。

    Gradle支持一键式转换Maven项目,只要一个小小的命令即可把Maven项目转换成Gradle项目。Gradle Wrapper使得你不用安装配置也可以实用Gradle,这能更好地支持持续集成。Gradle的守护进程(daemon)机制大大提高构建的速度。

    Ant已经被历史场合所淹没,而先下Java界最红的构建工具非Maven莫属,然后Gradle官方却给出了Gradle vs Maven,可以大致了解下。

    Groovy

    为什么选择Groovy语言作为Gradle的构建脚本呢?

    这也是许多Java开发者对Gradle所诟病之一,也是给许多Maven使用者造成心理恐惧而不愿意迁移到Gradle的原因之一。

    其实Gradle支持JRuby和Jython来构建脚本的,但他们是第二选择,Gradle还是把Groovy作为第一选择,这是因为Groovy的基础语法和数据类型都跟普通的Java相似,这就给Java开发者提供了相对透明和最小的学习曲线。不选择Java作为构建脚本是因为它的一些限制不能发挥脚本的强大威力。

    我的选择

    由于我是半路转到Java领域,因此对Maven的了解并不是特别深入,而且厌倦了xml格式的繁琐,正值下一个自动化构建工具Gradle的逐步走上成熟,何不当机立断跟上潮流,而且现在多花些时间来深入学习,既可以获得一个得心应手的工具,又可免除3-5年后再次切换工具的后顾之忧。

    如果你已经熟练掌握了Maven,建议你也可以简单了解下Gradle,以备不时之需。但如果你和我一样,目前对Maven一知半解,何不深入学习下Gradle呢?

    未完....


    更多原创文章可关注我的个人博客:宅前疯 或微信公众账号:zhaiqianfeng

    微信公众号:zhaiqianfeng

    相关文章

      网友评论

      • 江雨初晴:看不懂😂只能说术业有专攻
        江雨初晴: @翟前锋 哈哈哈😆😆😆
        翟前锋: @江雨初晴 我探讨的不是技术,是寂寞!把技术当做恋人来呵护和探索^_^

      本文标题:Gradle之恋-一见倾心

      本文链接:https://www.haomeiwen.com/subject/qkkcgttx.html