1)优点
简化了项目依赖管理。
当年,多少人被 SSH 整合搞死搞活,很多时候,是因为依赖不完整,或者版本不正确。 自从 Maven 出来后,终于可以无痛了~当然,也有一部分功劳是 Spring Boot ,这是后 话。
易于上手,对于新手可能一个 mvn clean package 命令就可能满足我们的工作。
便于与持续集成工具(Jenkins)整合。
便于项目升级,无论是项目本身升级还是项目使用的依赖升级。
有助于多模块项目的开发,一个模块开发好后,发布到仓库,依赖该模块时可以直接从仓库更新,而不用自己去编译。
Maven 有很多插件,便于功能扩展,比如生产站点,自动发布版本等。
2)缺点
Maven 是一个庞大的构建系统,学习难度大。
这里的学习,更多指的完整学习。如果基本使用,并不会存在该问题。
Maven 采用约定优于配置的策略(convention over configuration),虽然上手容易,但是一旦出了问题,难于调试。这个确实,略微痛苦。
当依赖很多时,m2eclipse 老是搞得 Eclipse 很卡。
使用 IDEA ,而不是 Eclipse ,完美解决。
中国的网络环境差,很多 repository 无法访问,比如 Google Code、 JBoss 仓库无法访 问等。
这个也好解决,在