maven 使用总结

maven官方文档
易百教程
maven库查询

安装

下载二进制包后解压即可,然后配置环境变量

1
2
echo 'export M2_HOME=/usr/local/apache_maven_xxx' >> /etc/profile
echo 'export PATH=$M2_HOME/bin:$PATH' >> /etc/profile

执行mvn -v查看版本,同时确认是否安装配置OK

配置

超级POM

配置文件

maven的配置文件有三个级别

  1. 项目级,位于项目workspace目录下的pom.xml
  2. 用户级,位于~/.m2/settings.xml,通过mvn -s /path/to/settings.xml可以覆盖用户级配置文件
  3. 全局级,位于${M2_HOME}/conf/settings.xml,通过mvn -gs /path/to/settings.xml可以覆盖全局配置文件

配置项目

标签 类型 说明
localRepository String 本地仓库路径,默认位于~/.m2/repository
mirrors List<mirror> 配置仓库的下载镜像

mirrorOf配置

  1. * = everything
  2. external:* = everything not on the localhost and not file based.
  3. repo,repo1 = repo or repo1
  4. *,!repo1 = everything except repo1

镜像设置

阿里镜像

公共代理库使用文档

1
2
3
4
5
6
7
8
<mirrors>
<mirror>
<id>alimavenpublic</id>
<name>aliyun maven public</name>
<url>http://maven.aliyun.com/repository/public</url>
<mirrorOf>central,jcenter</mirrorOf>
</mirror>
</mirrors>

华为镜像

1
2
3
4
5
<mirror>
<id>huaweicloud</id>
<mirrorOf>*</mirrorOf>
<url>https://mirrors.huaweicloud.com/repository/maven/</url>
</mirror>

Maven仓库

对于Maven来说,仓库只有两类: 本地仓库和远程仓库。
当Maven根据坐标寻找构件时,首先查找本地仓库,如果本地仓库存在此构件,则直接使用;
如果本地仓库没有此构件,或需要查看构件是否有更新,Maven会去远程仓库查找,找到后下载到本地仓库再使用,如果没有找到则报错。

对于远程仓库,根据仓库的提供者又可以分为: 中央仓库、其他公开库和私服
中央仓库是Maven自带的远程仓库,它包含了绝大部分开源的构件。默认情况下,当本地仓库没有找到需要的构件时,Maven会尝试从中央仓库下载。

Maven常用命令

Help命令

查看某个插件的详情

1
mvn help:describe -Dplugin=xxx -Ddetail

plugin可以使用下面三种方式指定:

  • 插件前缀, 如 ‘help’
  • groupId:artifactId, 如 ‘org.apache.maven.plugins:maven-help-plugin’
  • groupId:artifactId:version, 如 ‘org.apache.maven.plugins:maven-help-plugin:2.0’

查看某个插件的指定命令的帮助

1
mvn archetype:help -Ddetail -Dgoal=generate

使用archetype创建Maven项目

1
2
mvn archetype:generate
mvn -U archetype:generate -Dfilter=io.jenkins.archetypes: