操作系統(tǒng): | CentOS7.6 x64 |
---|---|
Maven版本 | 3.6.0 |
訪問Apache Maven下載頁面,下載下圖
/usr/local
目錄下,并解壓為目錄apache-maven
tar -zxvf apache-maven-3.6.0-bin.tar.gzmv apache-maven-3.6.0 apache-maven
Maven 環(huán)境變量配置,在export PATH
所在行下面添加如下內(nèi)容
編輯/etc/profile文件
MAVEN_HOME=/usr/local/apache-mavenexport MAVEN_HOMEexport PATH=${PATH}:${MAVEN_HOME}/bin
使新加的環(huán)境變量生效
source /etc/profile
執(zhí)行命令 mvn -version
[root@MiWiFi-R3-srv apache-maven]# mvn -versionApache Maven 3.6.0 (97c98ec64a1fdfee7767ce5ffb20918da4f719f3; 2018-10-25T02:41:47 08:00)Maven home: /usr/local/apache-mavenJava version: 1.8.0_191, vendor: Oracle Corporation, runtime: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-1.el7_6.x86_64/jreDefault locale: en_US, platform encoding: UTF-8OS name: "linux", version: "3.10.0-957.1.3.el7.x86_64", arch: "amd64", family: "unix"
因網(wǎng)絡(luò)原因,國外的Maven倉庫訪問下載速度屬于“龜速”,阿里云搭建了國內(nèi)的maven倉庫,方便了國內(nèi)的廣大開發(fā)者下載依賴jar包,提高開發(fā)效率。在maven中設(shè)置阿里云的中央倉庫方法如下:
在<mirrors>....</mirrors>
中間增加如下內(nèi)容:
<mirror> <id>alimaven</id> <mirrorOf>central</mirrorOf> <name>aliyun maven</name> <url>http://maven.aliyun.com/nexus/content/groups/public/</url> </mirror>
注意:
<mirrorOf>central</mirrorOf>
盡量避免寫成,<mirrorOf>*</mirrorOf>
,這樣在工程的pom文件中如果自定義一些repository時(shí)會不生效。如一個(gè)spring cloud項(xiàng)目中的POM文件中指定了repository,如果配置為*,回報(bào)如下
<repositories> <repository> <id>spring-milestones</id> <name>Spring Milestones</name> <url>https://repo.spring.io/milestone</url> </repository></repositories>
配置阿里云maven倉庫后,執(zhí)行mvn 命令報(bào)錯(cuò)如下。
[ERROR][ERROR] Some problems were encountered while processing the POMs:[ERROR] Non-resolvable import POM: Failure to find org.springframework.cloud:spring-cloud-dependencies:pom:Greenwich.RC2 in http://maven.aliyun.com/nexus/content/groups/public was cached in the local repository, resolution will not be reattempted until the update interval of nexus-aliyun has elapsed or updates are forced @ line 45, column 25
分析:
在配置阿里云Maven倉庫是mirrorOf 屬性寫成了<mirrorOf>*</mirrorOf>
這樣在工程的pom文件中如果自定義一些repository時(shí)會不生效,要寫成<mirrorOf>central</mirrorOf>
。如一個(gè)spring cloud項(xiàng)目中的POM文件中指定了repository如下:
<repositories> <repository> <id>spring-milestones</id> <name>Spring Milestones</name> <url>https://repo.spring.io/milestone</url> </repository></repositories>
maven 會到阿里中央倉庫下載Greenwich.RC2的jar包,但是下載失敗,從https://repo.spring.io/milestone是可以下載的。
大家如果有什么好的方法,歡迎留言。
來源:http://www.icode9.com/content-3-98501.html