Maven是什么
Maven的中文本意是“专家、内行”的意思。
Apache Maven是一个主要针对Java的项目管理及综合工具,由Apache软件基金会所提供。Maven提供了开发人员构建一个完整的生命周期框架。开发团队可以自动完成项目的基础工具建设,Maven使用标准的目录结构和默认构建生命周期。
在多个开发团队环境时,Maven可以设置按标准在非常短的时间里完成配置工作。由于大部分项目的设置都很简单,并且可重复使用,Maven让开发人员的工作更轻松,同时创建报表,检查,构建和测试自动化设置。
Maven提供了开发人员的方式来管理:
- Builds
- Documentation
- Reporting
- Dependencies
- SCMs
- Releases
- Distribution
- mailing list
概括地说,Maven简化和标准化项目建设过程。处理编译,分配,文档,团队协作和其他任务的无缝连接。 Maven增加可重用性并负责建立相关的任务。
Maven有什么作用
- 依赖管理
减少对包的重复存储,最大限度的降低代码包大小 - 插件
降低工作量,自动化构建 - 聚合和继承
降低包的冲突及重复引用
Maven安装
请参见Maven官网-Install
注:在安装前需确认jdk环境已经安装配置完成。绝大多数IDE安装包中已集成Maven插件,这里就不介绍安装。
注:默认情况下maven的本地仓库会存放在“~/.m2/“目录下。
Maven项目结构
上图是一个Maven项目目录结构,
“pom.xml”是maven主配置文件“项目对象模型”
“src/main/java”是项目的源码目录,所有java源码需要在此目录中
“src/main/resources”是项目的资源目录,所有配置资源需要在此目录中
“src/test/java“是测试目录,所有的测试代码需要放在此目录中
”target“为目标目录,编译及生成好的文件在此目录中,该目录由maven创建及管理,无需手工添加
常用maven命令
命令表达式 | 说明 |
---|---|
mvn clean |
清除上次编译及生成文件 |
mvn compile |
对项目进行编译 |
mvn test |
执行全部测试用例 |
mvn package |
对项目进行打包 |
mvn install |
对项目进行打包并安装到本地仓库 |
注:maven的命令远远不止文中列出的,根据maven的生命周期及插件还有很多命令,可以通过访问官网查询,本文仅仅列出最基础最常用的命令
pom编写基础
<modal version>
值为4.0.0,使用maven3需要如此设置<grounpId>
为组id,标识所属的组,一般java源码包命名参照groupId<artifactId>
为构件id,一般为本项目名称<version>
为版本号<type>
为该项目打包类型<dependencies>
为依赖标签,该标签下配置依赖每个依赖需要用
<dependency>
标签包围其中
<grounpId>
为需要依赖的构件包的组id其中
<artifactId>
为需要依赖的构件的id其中
<version>
为需要依赖的构件的版本号
构件依赖信息查询
pom中引用的构件信息可以通过Maven仓库查询。
在搜索框输入需要查询构件进行查询,如“spring jdbc”
选择所需要的构建查询详细,
选择需要引用的版本进入
在页面里查看maven配置
网友评论