1.Maven简介
Maven是Apache下的纯java开发的开源项目
是一个项目管理工具,可以对java项目进行构建、依赖管理
也可被用于构建和管理各种项目,例如:c#,ruby,Scala和其它语言编写的项目。
为了使开发变得更加容易。
2.Maven的两大功能
项目构建和项目管理
2.1项目构建
项目构建是一个项目从:源代码、编译、测试、打包、部署、运行的过程
2.1.1传统的项目构建和Maven项目构建过程
2.1.1.1传统项目构建
以javaweb为例:
1.在idea创建一个javaweb工程
2.在工程中编写源代码以及配置文件以及导入jar包
3.对源代码进行编译,java源文件编译成.class文件
4.执行junit单元测试
5.将工程打包成war包部署到tomcat上运行
2.1.1.2Maven构建项目
Maven将项目构建进行了标准化,每个阶段使用一个命令完成
清理:删除以前的编译结果,为重新编写做好准备
编译:将java源程序编译成字节码文件
测试:针对项目中的关键点进行测试,确保项目在迭代开发中关键点的正确性
报告:在每一次测试后以标准的格式记录和展示测试是结果
打包:将工程封装为压缩文件用于部署或安装。JAVA工程对应jar包,JAVAweb工程对应war包(**注意:**如果在pom.xml中未书写压缩成对应文件,工程是无法打包的,也就无法部署到tomcat上运行)
安装:在Maven环境下特指将打包的结果安装到本地仓库
部署:将打包的结果部署到远程仓库或将war包部署到服务器上运行。
2.2依赖管理
什么是依赖管理?
什么是依赖?一个java项目可能要是用一些第三方的jar包才可以运行,所说的依赖就是项目运行所需要的jar包
什么是依赖管理?就是对项目所有依赖的jar包进行规范化管理
2.2.1传统项目依赖管理
传统项目的依赖管理需要程序员手动去向工程中添加一些必须jar包,寻找和版本的匹配非常的麻烦
2.2.2Maven项目依赖管理
Maven项目不需要手动去向工程中添加jar包,只需要在pom.xml添加jar包的坐标,自动从本地仓库去导入,如果本地仓库没有会去中央仓库下载到本地仓库,这些过程都是自动的。
使用Maven依赖管理添加jar的好处:
1.通过pom.xml文件对jar包进行统一管理,避免版本冲突
2.Maven团队维护了一个非常完全的Maven仓库,里面包括了当前使用的jar包,Maven工程可以自动从Maven仓库下载jar包。
3.使用Maven的好处
1.一步构建
Maven对项目构建进行标准化,通过一个命令即可完成构建
2.依赖管理
Maven不需要手动导入jar包,通过在pom.xml中定义从Maven仓库自动下载
3.Maven的跨平台
可以再windows、linux上使用
4.Maven遵循规范开发
有利于提高项目团队的开发效率,降低维护成本