Maven官网:https://maven.apache.org/
一、maven简介
Apache Maven是一个软件项目管理和理解工具。基于项目对象模型(POM)的概念,用于对java项目jar包的管理与项目脚手架的搭建使用。
二、下载与安装
1.下载
2.安装
安装maven之前maven之前确保已安装jdk,打开命令窗口查看存在jdk环境,输出版本号表示存在,如果没用java环境需要先安装java环境。
下载好maven压缩包后,解压到电脑任意磁盘,然后配置maven环境变量。
打开命令窗口查看是否配置成功,输出版本号表示配置成功
三、maven目录结构
maven工程也是一个java项目
bin:包含maven的运行脚本文件
boot:包含maven的类加载器
conf:包含maven的配置文件
lib:包含maven运行需要的jar包
四、maven构建项目结构
五、maven配置之setting.xml文件
在maven安装目录下的conf目录下找到settting.xml文件进行配置。
- mirrors标签:表示配置jar包下载镜像所在路径
- localRepository标签:表示本地仓库所在路径
- interactiveMode标签:表示maven是否需要和用户交互,默认true
- offline标签:表示maven是否需要在离线模式下运行,默认false
- pluginGroups标签:当插件找不到时,提供寻找插件的列表
- proxies标签:用于配置maven代理,在特殊情况下通过代理服务器来访问互联网
- servers标签:配置远程仓库的访问信息,如username、password
- profiles标签:根据不同环境或参数启用不同的配置信息
mirror标签镜像加速配置,由于原下载路径http://repo.maven.apache.org/maven2/……在国外,下载速度会比较慢,通常采用方案是使用国内的阿里云镜像仓库,将如下代码配置在setting.xml文件mirrors标签内即可
<mirror>
<id>alimaven</id>
<mirrorOf>central</mirrorOf>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
</mirror>
下载下来的jar包会保存在本地仓库(localRepository配置路径)中,若没有配置则是当前登录管理员账户目录下得.m2文件夹
六、maven项目pom.xml文件
pom.xml文档参考:https://maven.apache.org/pom.html
常用基础认识
- groupId标签:当前项目的组标识一般采用公司的域名反写如org.apache.tomcat
- artifactId标签:项目属性标识
- version标签: 项目版本标识以上三个标签构成项目的唯一标识
- packaging标签: 打包类型(war或则jar)
- dependencies标签: 内涵dependencie标签,描述项目的jar包依赖,其中包含了一个optional标签,设置为true时不传递依赖到引用当前jar包的项目
- properties标签:属性标签,通常用于统一管理依赖的版本号
- parent标签:子pom中对父pom标识
- dependencyManagement标签:父pom得依赖管理,方便统一管理子
pomjar包依赖- modules标签:父pom中对各个子pom模块的描述
- build标签:构建项目标签,在执行maven命令时使用使用其中得各个配置或插件标签
- reporting标签:用于执行mvn site生成项目站点的配置
寻找jar的依赖配置可以前往:https://mvnrepository.com/
七、maven常用命令
- mvn archetype:create -DgroupId=packageName -DartifactId=projectName 创建项目
- mvn archetype:generate 生成当前项目的脚手架
- mvn compile 编译项目
- mvn test-compile 编译项目测试代码
- mvn test 运行测试
- mvn site 产生项目的maven站点
- mvn package 打包项目
- mvn install 把项目在本地仓库安装jar包
- mvn clean 清除项目编译
- mvn -Dtest package 只打包不测试
- mvn eclipse:eclipse 生成eclipse项目
- mvn idea:idea 生成idea项目
- mvn deploy 上传到私服
- mvn clean deploy -X -Dmaven.test.skip=true 上传到私服
- mvn install:install-file -DgroupId=com -DartifactId=client -Dversion=1.0.0 -Dpackaging=jar -Dfile=e:\client-1.0.0.jar 将jar包安装到本地仓库