由於眾所周知的原因,maven的庫在中國大陸非常慢。我在百度上搜到的大部分文章都是直接在~/.m2/settings.xml 加入以下內容
<mirrors> <mirror> <id>aliyunmaven</id> <mirrorOf>central</mirrorOf> <name>aliyun maven</name> <url>https://maven.aliyun.com/repository/public </url> </mirror> </mirrors>
其實這樣設置,我發現其實鏡像並沒有改變,還是maven的中央庫。在maven庫的官網上http://maven.apache.org/settings.html,是建議我們這樣設置的。但是我發現,有時候,阿里雲maven源有的包下載不了。所以我建議設置如果阿里雲下載不了,就去下載中央庫。所以我的設置如下:
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"> <localRepository/> <interactiveMode/> <usePluginRegistry/> <offline/> <pluginGroups/> <servers/> <mirrors> <mirror> <id>aliyunmaven</id> <mirrorOf>central</mirrorOf> <name>阿里雲公共倉庫</name> <url>https://maven.aliyun.com/repository/central</url> </mirror> <mirror> <id>repo1</id> <mirrorOf>central</mirrorOf> <name>central repo</name> <url>http://repo1.maven.org/maven2/</url> </mirror> <mirror> <id>aliyunmaven</id> <mirrorOf>apache snapshots</mirrorOf> <name>阿里雲阿帕奇倉庫</name> <url>https://maven.aliyun.com/repository/apache-snapshots</url> </mirror> </mirrors> <proxies/> <activeProfiles/> <profiles> <profile> <repositories> <repository> <id>aliyunmaven</id> <name>aliyunmaven</name> <url>https://maven.aliyun.com/repository/public</url> <layout>default</layout> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> </repository> <repository> <id>MavenCentral</id> <url>http://repo1.maven.org/maven2/</url> </repository> <repository> <id>aliyunmavenApache</id> <url>https://maven.aliyun.com/repository/apache-snapshots</url> </repository> </repositories> </profile> </profiles> </settings>
還有一個令人困惑的是標簽mirrorOf,根據maven官網解釋 specify the mirror of setting that is the ID of the repository you are using a mirror of。這句話令人困惑,我猜的意思就是https://maven.aliyun.com/repository/central下的哪個倉庫,如果是*號,就包含了所有倉庫。比如看下圖,
轉載至:https://zhuanlan.zhihu.com/p/71998219