gradle 为什么这么难用却能流行起来?
我不喜欢xml,巨讨厌xml,我在努力滴把所用到的开源项目去xml化
但是
我在日常的构建工具中,则是:能用maven,就用maven,不用gradle
原因很简单,gradle的脚本,很难直接拷贝过来就run起来,基本上都会出各种乱七八糟的问题
也就是说,gradle会把构建工具给复杂化,如果你的项目本身,重心不在构建工具上的时候,并且maven能够很好解决你的问题的时候,那还是maven吧
maven的pom.xml,很少发生过,拷贝过来,林北不能用的情况
那什么时候用gradle呢?
一般是类库开发时候用gradle,有些时候不得不用gradle
比如gradle可以用来构建c++和swift的项目,maven基本上就只针对java/jvm上那些语言了
gradle上自定义脚本比较方便,所以涉及到aot,graal等大量自定义非常规配置的项目,也需要gradle
前者的例子就是javafx的build.gradle,有5000多行,看得我头疼,因为涉及到c++
后者的例子就是spring现在开始推荐缺省用gradle,他们的说法说是用gradle搞native image简单
安卓开发用gradle也是有传统的,因为安卓本身就涉及到大量native,gui和aot的东西,相比之下,spring和javafx都还是后来的了
但是如果你只是想整个项目,做点简单的业务,没有太多定制的东西,也不想浪费时间在构建工具上
那么你就用maven就好了,这样可以避开脚本
脚本的特点就是会让一个人把简单的问题复杂化,这不仅仅是gradle/groovy,javascript,python什么也是一样的,别人写的脚本,管他什么语言写的,我是连看都不想看,有看的功夫,我不如自己写一个,估计还更快,脚本就适合那种,用完就丢掉的破烂需求
要维护代码的话,选择静态类型是基本素养,ide遇到静态类型也能变得很智能,遇到动态类型的ide卡得你怀疑电脑是不是坏掉了
初心者如果没有什么特别追求的话,完全可以从maven入手
然后等你开始看源码,开始给开源项目贡献你代码的时候,再开始gradle不迟