Maven(mvn)是基于项目对象模型(POM project object model),可以通过一小段描述信息(配置)来管理项目的构建,报告和文档的软件项目管理工具(百度百科)

简单理解为一个打包工具,其他的打包工具比如gradle也很火,常用于与jenkins等代码发布平台的联合代码发布

本文主要介绍linux下的maven的安装方法

============ 完美的分割线 =============

发布命令

mvn deploy -P snapshots   上传到指定的host仓库

mvn clean package -U 打成包

1.准备工作

1)maven的安装运行以来Java环境,需要预先安装,具体Java安装方法可以参考我的另一篇博文:

linux下yum安装jdk1.8(rpm包)和tomcat-8.5

2)maven软件包下载地址:

https://mirrors.cnnic.cn/apache/maven/

3)本教程适用于以下系统环境
CentOS6.9_x64
CentOS7.5_x64

2.安装maven

1)下载软件包

# 20180921最新安装包版本3.5.4,下载二进制包,解压即可使用

mkdir -p /server/tools
cd /server/tools/
wget https://mirrors.cnnic.cn/apache/maven/maven-3/3.5.4/binaries/apache-maven-3.5.4-bin.tar.gz --no-check-certificate

2)解压安装maven软件包

tar -xf apache-maven-3.5.4-bin.tar.gz 
mv apache-maven-3.5.4 /usr/local/maven
ln -s /usr/local/maven/bin/mvn  /usr/bin/mvn    # 与jenkins联合使用时,jenkins会到/usr/bin/下找mvn命令,如果没有回报错
ll /usr/local/maven/
ll /usr/bin/mvn

3)配置环境变量

复制代码
echo " ">>/etc/profile
echo "# Made for mvn env by zhaoshuai on $(date +%F)">>/etc/profile
echo 'export MAVEN_HOME=/usr/local/maven'>>/etc/profile
echo 'export PATH=$MAVEN_HOME/bin:$PATH'>>/etc/profile
tail -4 /etc/profile
source /etc/profile
echo $PATH
复制代码

4)查看安装的mvn版本号

which mvn
mvn -version

最后可以看到以下结果

复制代码
[root@CentOS75 conf]# which mvn      # 查看mvn工具的位置/usr/local/maven/bin/mvn
[root@CentOS75 conf]# mvn -version    # 查看maven版本
Apache Maven 3.5.4 (1edded0938998edf8bf061f1ceb3cfdeccf443fe; 2018-06-18T02:33:14+08:00)
Maven home: /usr/local/maven
Java version: 1.8.0_181, vendor: Oracle Corporation, runtime: /usr/java/jdk1.8.0_181-amd64/jre
Default locale: zh_CN, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-862.11.6.el7.x86_64", arch: "amd64", family: "unix"
复制代码

至此maven安装完成,可以使用mvn工具打包代码。

在首次使用mvn工具时会到maven.apache.org下载相关依赖包,不过速度较慢,
一般我们会设置私有库,比如使用nexus安装私有库提供依赖包,这部分需要和开发人员合作进行配置,本文暂略

3.配置maven私有库

# 编辑maven配置文件修改私有库的配置

复制代码
cd /usr/local/maven/conf/
cp settings.xml settings.xml.ori
vim /usr/local/maven/conf/settings.xml
--------- setting标签里设置本地仓库的存储位置 ----------
  <localRepository>/usr/local/maven/mavenlib</localRepository>        
---------- mirror标签里配置Maven 镜像地址 --------------
    <mirror>
      <id>nexus</id>
      <mirrorOf>*</mirrorOf>
      <name>mynexus</name>
      <url>http://192.168.1.9:18081/repository/maven-public/</url>
    </mirror>
------------------- 配置私服地址  ---------------------
     <profile>
       <id>nexus</id>
       <repositories>
         <repository>
           <id>nexus</id>
                <name>Nexus</name>
           <url>http://192.168.1.9:18081/repository/maven-public/</url>
           <releases><enabled>true</enabled></releases>
           <snapshots><enabled>true</enabled></snapshots>
         </repository>
       </repositories>
       <pluginRepositories>
         <pluginRepository>
           <id>nexus</id>
             <name>Nexus</name>
             <url>http://192.168.1.9:18081/repository/maven-public/</url>
             <releases><enabled>true</enabled></releases>
             <snapshots><enabled>true</enabled></snapshots>
         </pluginRepository>
       </pluginRepositories>
     </profile>
---------------------
版权声明:本文为技术颜良原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/cheyunhua/p/16185929.html