Maven(mvn)是基於項目對象模型(POM project object model),能夠經過一小段描述信息(配置)來管理項目的構建,報告和文檔的軟件項目管理工具(百度百科)html
簡單理解爲一個打包工具,其餘的打包工具好比gradle也很火,經常使用於與jenkins等代碼發佈平臺的聯合代碼發佈java
本文主要介紹linux下的maven的安裝方法linux
============ 完美的分割線 =============apache
1)maven的安裝運行以來Java環境,須要預先安裝,具體Java安裝方法能夠參考個人另外一篇博文:vim
linux下yum安裝jdk1.8(rpm包)和tomcat-8.5tomcat
2)maven軟件包下載地址:maven
https://mirrors.cnnic.cn/apache/maven/工具
3)本教程適用於如下系統環境
CentOS6.9_x64
CentOS7.5_x64gradle
1)下載軟件包url
# 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安裝私有庫提供依賴包,這部分須要和開發人員合做進行配置,本文暫略
# 編輯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> ------------------------------------------------
代碼裏面有不少東西是須要拉去依賴包,這些依賴包就存放在本地的私有倉庫裏(Nexus)
============= 完畢,呵呵呵呵 ==============