一、与Ant的对比
Ant是繁琐,但是学起来并不难,用起来感觉比较琐碎,毕竟Ant是面向过程的,每一步都要去配置,所以用好还是比较容易的。但是Maven由于出身原因,是针对项目管理,所以学习曲线比较陡峭,关键是引入的概念比较多,理解了Maven的概念之后再去用Maven就会觉得确实比Ant强大得多,而且用起来也比较简单,但是想要用好Maven却不是很简单的!
二、用不好Maven的原因(针对Maven的初级使用者、中级使用者)
初级使用者:
初级使用者往往是在还没有完全理解Maven概念的情况下,就去一知半解的去使用Maven,这样就造成只是简单地去使用Maven替代Ant,完成以前需要使用Ant来完成的任务,根本没有发挥Maven的巨大威力!
这种情况的主要原因是在对Maven概念的理解上,所以这个阶段提升重点是对Maven所引入概念的理解、吃透,这样才能对Maven有一个比较全面、透彻的理解,在解决了概念即方向的问题之后,再去使用Maven就可以避免形而上学的问题了。
中级使用者:
中级使用者已经跨越了初级使用者的问题,这个时候可能已经不是在Maven本身的使用上存在问题,而是更多地出现在Maven与实践项目结合上,不能在实际项目中发挥Maven的最大火力,甚至有时候觉得是在作茧自缚。这种情况主要出现在项目规模越来越大、项目进入二期三期的时候,主要原因是因为随着项目的进一步深入,由于之前没有更好地划分项目模块而造成以为项目模块之间的依赖关系越来制约项目的进展。
所以针对中级使用者,对项目模块的划分直接制约着Maven功能的发挥,对模块的划分也是中级使用者提升自我水平的瓶颈,这个时候除了对Maven的更深入了解外,还要针对实际项目进行具体分析,不只是实现形式上的“高内聚、低耦合”,更实现内部逻辑上的“高内聚、低耦合”。只有这样才能使pom中的依赖关系简单、清晰、容易配置,才能体会到Maven的强大、便捷,因为毕竟在优化POM方面,对依赖关系的优化也一直是优化的重点。
高级使用者:
跨过了中级使用者这一门槛,我觉得基本上已经是“半九十”了,最后的“十”是Maven与其他各种第三方工具的集成,更高效地使用Maven进行项目管理,而这后“十”的道路相对来说是比较平坦的,希望自己能够早日走到这段路程上。
三、总结
以上是我学习Maven时觉得要使用好Maven的几点理解,记录于此,欢迎批评指正!