Maven提供了开发人员构建一个完整的生命周期框架。开发团队能够自动完成项目的基础工具建设,Maven使用标准的目录结构和默认构建生命周期。Maven让开发人员的工做更轻松,同时建立报表,检查,构建和测试自动化设置。Maven简化和标准化项目建设过程。处理编译,分配,文档,团队协做和其余任务的无缝链接。 Maven增长可重用性并负责创建相关的任务。spring
每一个Java项目的目录结构都没有一个统一的标准,配置文件处处都是,单元测试代码到底应该放在那里也没有一个权威的规范。apache
所以,咱们就要用到Maven(使用Ant也能够,不过编写Ant的xml脚本比较麻烦)----一个项目管理工具。框架
Maven主要作了两件事:maven
若是没有Maven,你可能不得不经历下面的过程:工具
1 若是使用了spring,去spring的官网下载jar包;若是使用hibernate,去hibernate的官网下载Jar包;若是使用Log4j,去log4j的官网下载jar包..... 2 当某些jar包有依赖的时候,还要去下载对应的依赖jar包 3 当jar包依赖有冲突时,不得不一个一个的排查 4 执行构建时,须要使用ant写出不少重复的任务代码 5 当新人加入开发时,须要拷贝大量的jar包,而后重复进行构建 6 当进行测试时,须要一个一个的运行....检查
有了Maven,它提供了三种功能:单元测试
1 依赖的管理:仅仅经过jar包的几个属性,就能肯定惟一的jar包,在指定的文件pom.xml中,只要写入这些依赖属性,就会自动下载并管理jar包。 2 项目的构建:内置不少的插件与生命周期,支持多种任务,好比校验、编译、测试、打包、部署、发布... 3 项目的知识管理:管理项目相关的其余内容,好比开发者信息,版本等等