Maven
Maven项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具。
Maven是一个用于项目构建的工具,通过它便捷的管理项目的生命周期。即项目的jar包依赖,开发,测试,发布打包。
安装
以下是以Linux为例,Windows下配置也基本相同。
1. 下载
1 | wget http://mirrors.cnnic.cn/apache/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz |
2. 解压
1 | tar -zxvf apache-maven-3.3.9-bin.tar.gz |
如需使用软连接
1 | ln -s apache-maven-3.3.9 maven |
3. 修改配置文件
本地仓库默认是用户目录下的.m2\repository
,用户级的配置文件settings.xml
也放在这里。
全局配置修改:
1 | vi conf/settings.xml |
1 | #设置本地资源库位置 |
4. 配置环境变量
添加环境变量
1 | vi /etc/profile |
1 | export M2_HOME=/home/maven/maven |
使环境变量生效
1 | source /etc/profile |
5. 验证是否安装成功
在其他目录执行
1
mvn -version
1 | mvn -version |
常用命令
mvn archetype:create
:创建 Maven 项目mvn compile
:编译源代码mvn test-compile
:编译测试代码mvn test
: 运行应用程序中的单元测试mvn site
: 生成项目相关信息的网站mvn clean
:清除目标目录中的生成结果mvn package
: 依据项目生成 jar 文件mvn install
:在本地 Repository 中安装 jarmvn eclipse:eclipse
:生成 Eclipse 项目文件mvn idea:idea
: 生成idea项目mvn jar:jar
: 只打jar包mvn eclipse:clean
: 清除eclipse的一些系统设置mvn jetty:run
: 运行项目于jetty上mvn -DskipTests=true
: 忽略测试文档编译
关于仓库
本地仓库
本地仓库默认是用户目录下的.m2\repository,用户可以通过settings.xml设置
远程仓库
maven的远程仓库有多种存在形式,中央仓库,其他远程仓库,镜像,私服
1. 中央仓库
中央仓库是默认的远程仓库,如果不做任何特殊配置那么将会从中央仓库下载依赖,这在$M2_HOME/lib/maven-model-builder-3.0.4.jar
里的org/apache/maven/model/pom-4.0.0.xml
里做了指定,如下:
1 | <repositories> |
2. 镜像
镜像是将的maven依赖请求转发至相应服务器,配置如下:
1 | <mirror> |
这里即是将仓库id为repositoryId
的所有请求转发至http://my.repository.com/repo/path
镜像服务器
镜像更为常用的作法是结合私服,如下配置:
1 | <mirror> |
这里即是将对所有仓库的请求转发至私服http://my.repository.com/repo/path
3. 私服
私服一般采用nexus部署
添加其他远程仓库
添加一个其他的远程库只需在项目的pom.xml文件中添加以下配置即可
1 | <repositories> |
- snapshots false表示关闭jboss远程仓库的snapshots版本下载
- releases true表示打开jboss远程仓库的release版本下载
远程服务器的验证
远程服务器的验证,只需在settings.xml添加如下代码即可
1 | <server> |
注意:id要与配置的远程服务器id对应比如 jboss