Maven是Apache旗下的一个开源项目,是一个项目管理和构建工具,它基于项目对象模型(Project Object Model , 简 称: POM)的概念,通过一小段描述信息来管理项目的构建、报告和文档。掌握Maven可以进行一些简单的依赖管理、 统一项目结构、 项目构建,下面做详细介绍。
方便快捷的管理项目依赖的资源(jar包),避免版本冲突问题。若没有通过maven进行大型项目的依赖管理,我们在开发项目时,需要引入大量的jar包。那么此时,jar包和jar包之间很多时候是需要版本匹配的,如果版本不匹配,此时很容易出现版本冲突问题。
当使用maven进行项目依赖(jar包)管理,则很方便的可以解决这个问题。 我们只需要在maven项目的pom.xml文件中,添加一段如下图所示的配置即可实现。
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-dependencies</artifactId> <version>2.2.13.RELEASE</version> <type>pom</type> <scope>import</scope></dependency><dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> <version>1.2.4</version></dependency><dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper-spring-boot-starter</artifactId> <version>1.3.0</version></dependency><dependency> <groupId>com.github.oshi</groupId> <artifactId>oshi-core</artifactId <version>5.6.0</version></dependency><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId></dependency>
提供标准、统一的项目结构 在项目开发中,当你使用不同的开发工具 (如:Eclipse、Idea),创建项目工程时:
若我们创建的是一个maven工程,是可以帮我们自动生成统一、标准的项目目录结构:
具体的统一结构如下:
目录说明: src/main/java: java源代码目录 src/main/resources: 配置文件信息 src/test/java: 测试代码 src/test/resources: 测试配置文件信息
maven提供了标准的、跨平台(Linux、Windows、MacOS) 的自动化项目构建方式
如上图所示我们开发了一套系统,代码需要进行编译、测试、打包、发布,这些操作如果需要反复进行就显得特别麻烦,而Maven提供了一套简单的命令来完成项目构建。
综上所述,可以得到一个结论:Maven是一款管理和构建java项目的工具。