我正在开展一个非常庞大的项目(包括许多模块和一些外部库等),我们现在正在考虑从Ant转换到Maven。我理解两者之间的区别,但我并不确定值得花时间来转换项目布局、设置所有依赖项、教授开发人员和配置管理人员使用“新方法”等。
网络上有很多关于如何从Ant迁移到Maven的资源,但我没有找到很多说明为什么要这样做的资源 :-)
你是否阅读过《Maven权威指南》的第一章?特别是1.7 Maven与Ant的比较,其中有一个有趣的讨论。
我同意其他回答中提醒谨慎的观点。 Maven 有其优点,但没有什么是 Ant 构建流程无法完成的:
依赖管理:Ant 有 Ivy 子项目,可以与 Maven 仓库进行交互。
约定优于配置:你也可以在 Ant 中实现这一点,只需要确立规则并加以执行即可。
构建生命周期:同上,你可以通过规定每个构建所公开的任务来执行约定。
构建逻辑复用(Maven 插件):你也可以使用 macrodef
和任务库在 Ant 中实现。
无论如何,我建议您构建一个小的Maven原型(5到10个项目),展示您构建中的常见情况。您可以使用包含少量Java逻辑的虚拟项目来测试许多Maven功能(使用archetype插件生成它们)。
最终,这取决于你期望项目持续多长时间,你现在的流程有多好,你是否想清理你的依赖项,你是否想强制执行你的构建计划,以及你是否想有使用持续集成和构件管理的选项。如果你需要这些功能中的任何一项,Maven是一个很好的选择。