从蚂蚁搬到耙子真的有利吗?
任何人从蚂蚁迁移并发现一些巨大的东西?
仅供参考:当前环境是J2ME版本的Ant
我会说是,但我有一个不同于Java环境的人,因为我是一个.NET环境的人.我在msbuild(MS的XML驱动的NAnt工作)中编写并维护了一个非平凡的构建脚本(清理,生成 - 汇编信息,构建,测试,覆盖,分析,包),这非常痛苦:
XML不友好; 它很吵
团队中没有其他人有兴趣学习它,以便执行更多,更有用的自动化; 如此高的公交系数(即,如果我被公共汽车击中,他们就会被它困住)
它不适用于重构或改进 - 它是那些'碰到你自己'的事情之一,你知道吗?
它需要编写自定义C#任务来运行构建所需的各种工具(尽管公平,通常这些是由供应商编写的)
在大约一个工作周的时间里(在圣诞节时我喜欢空荡荡的办公室!),我已经学会了足够的ruby + rake用更短的(在LOC方面)脚本替换整个东西,功能稍微多一点,更多的可理解性(我希望,无论如何;还没有审查过).
它受益于: - 它是一种新语言,但却是一种真正的语言.我的队友喜欢学习新语言,这虽然是一个薄薄的借口,仍然是一个借口;-)如果我是对的,这可能会减轻公交因素. - 这是一个短距离(我收集)从这里到capistrano,来自RoR世界的自动/远程/分布式部署工具.尽管是一个MS-stack商店,我们将最终使用它与IIS7结合使用CLI配置工具.
是的.你的里程可能会有所不同,但这对我来说是值得的.
如果你想要耙子很棒:
访问真正的编程语言; 与Ant相比,条件和循环都是简单的(它们几乎不可能)
文件格式易于阅读,可以进行语法检查
更直观/可预测的值到变量的赋值
耙子对你不好,因为:
您需要自己提供很多基本的任务(比如运行javac,创建jar文件等).像Raven这样的项目可能会有所帮助,但它似乎适用于自动下载依赖项,而不是自动化构建/部署过程.另外,文档有点缺乏.
大多数可以自动化的java工具都是作为Ant任务完成的,这些任务不容易从Rake运行; 启动JVM在构建时可能很烦人