Maven 是什么?
它是一个项目管理工具,使用maven对java项目进行构建、依赖管理。
什么是项目构建?
项目构建是一个项目从编写源代码到编译、测试、运行、打包、部署、运行的过程。
传统项目的构建过程、
传统的使用Eclipse构建的项目的过程如下:
构建过程如下:
- 在Eclipse中创建一个java web工程
- 在工程中编写源代码及配置文件等
- 对源代码进行编译,java文件编译成class文件
- 执行junit单元测试
- 将工程打成war包部署至tomcat运行
maven项目的构建过程
maven项目构建的过程进行标准化,每个阶段使用一个命令完成,下图展示了构建过程的一些阶段:
上图中部分阶段对应命令如下:
- 清理阶段对应maven的命令是clean,清理输出的class文件
- 编译阶段对应maven的命令是compile,将java代码编译成class文件
- 打包阶段对应maven的命令是package,java工程可以打包成jar,web可以打包成war
运行一个maven工程(web工程)需要一个命令:tomat:run
什么是依赖管理
一个java项目可能要使用一些第三方的jar包才可以运行,那么我们说这个java项目依赖了这些第三方的jar包。
传统项目的依赖管理
传统的项目工程要管理所依赖的jar包靠人工进行,网上下载再导入。
手工拷贝jar包添加到工程的问题是:
- 没有对jar包进行版本的统一管理,容易导致版本冲突
- 从网上找jar包非常的不方便,有些jar包找不到
- jar包添加到工程导致工程过大
mave 项目的依赖管理
maven项目管理所依赖的jar包,只需要在pom.xml(maven中的配置文件)添加jar包的坐标,自动从maven仓库中下载jar包、运行,如下图:
使用maven的好处
使用maven有以下好处:
- 一步构建:maven对项目构建的过程进行了标准化,通过一个命令即可完成构建过程。
- 依赖管理:maven工程不用手动导入jar包,通过pom.xml中定义坐标,从maven仓库中自动下载。
- maven的跨平台:可在window、linux上使用
- maven遵循规范开发有利于提高大型团队的开发效率,降低项目的维护成本