当前位置:  开发笔记 > 编程语言 > 正文

选择脚本/构建工具

如何解决《选择脚本/构建工具》经验,为你挑选了1个好方法。

我们目前正在开发一个包含actionscript和Java的项目.到目前为止,我们使用Ant作为我们的主要构建工具,但它隐含的重复数量和缺乏灵活性(我们正在构建大量的小型子项目,并且每次都复制所有构建文件是一种痛苦)正在推动我们改变工具.

EDIT3:我已经完成了对Gant中所有构建的重写,尽管它并不完美,但它大规模缩小了我们的构建文件,并且使得添加新项目变得更加直接,所以我会明确地向不想改变他们的人推荐Gant构建哲学和项目结构,但只是寻找比蚂蚁更方便的工具.我可能会在那些日子里看看graddle和/或Ivy.

EDIT2:在尝试使用Buildr之后,我们将其排除在外,因为它确实比我们实际需要的更多.我现在正在尝试看起来像我们需要的Gant,但文档非常小.它是否值得一直移动到Gradle,或者该项目还不够成熟?

编辑:我将尝试澄清我们与Ant的问题.我们有几个具有相似布局的子项目,我们必须编译和运行测试.完成后,其中一些需要打包在一起以生成可执行文件(即客户端,服务器和一些独立的演示).在ant中描述我们的标准布局的工作是相当长的,并且在不重写整个宏的情况下引入小的变化是非常困难的.(比如,其中一个项目需要从不同的存储库中获取其可视资产).

Gant允许我们重用已经存在于Flash和Java中的ant任务

Gradle出于同样的原因,即使看起来稍微复杂一点

似乎强烈推荐的耙子.缺点是动作脚本集成的实验性支持以及我们缺乏Ruby知识

Buildr看起来很酷,但又来了,没有红宝石的知识

Scons的动力似乎不大,但Python是一种非常酷的脚本语言

Maven被认为是,但由于固有的复杂性和明显的错误倾向而被淘汰.我们目前倾向于Gant.你们有没有使用过这些工具的经验?他们如何比较?

我们的需求非常基本:编译和打包项目,将它们部署到多个目标和一些脚本功能(例如,运行项目特定的性能测试).值得注意的是,我们也可以使用Hudson来处理持续集成.



1> 小智..:

我不确定切换到gant会解决你的问题.Gant只是在groovy而不是xml中编写构建文件.我认为你的问题在你使用蚂蚁的方式上更多.很难说没有更多的细节,但像"笨重的复制"和"复制构建文件"这样的短语让我觉得你可以更有效地使用蚂蚁.

如果您还没有,请查看您的ant任务,看看您是否可以重构它们,以消除重复.另外,如果你还没有看到它,请检查ant的-find选项.您不应该复制构建文件.

顺便说一句,Ivy是用于依赖管理,而不是构建.

推荐阅读
oDavid_仔o_880
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有