日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

Maven仓库配置中央仓库

發(fā)布時(shí)間:2024/3/24 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Maven仓库配置中央仓库 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

目錄

1.什么是maven倉(cāng)庫(kù)

2.倉(cāng)庫(kù)分為兩類(lèi):本地倉(cāng)庫(kù)和遠(yuǎn)程倉(cāng)庫(kù)。

2.1 遠(yuǎn)程倉(cāng)庫(kù)

2.2 本地倉(cāng)庫(kù)

3.倉(cāng)庫(kù)配置

3.1 在 settings.xml 文件中配置本地倉(cāng)庫(kù)

3.2 在 settings.xml 文件中配置鏡像倉(cāng)庫(kù)(遠(yuǎn)程倉(cāng)庫(kù)):

4.倉(cāng)庫(kù)優(yōu)先級(jí)問(wèn)題:

4.1本地倉(cāng)庫(kù)

4.2指定倉(cāng)庫(kù)

4.3遠(yuǎn)程倉(cāng)庫(kù)

4.3.1鏡像倉(cāng)庫(kù)

4.3.2中央倉(cāng)庫(kù)


1.什么是maven倉(cāng)庫(kù)

Maven 倉(cāng)庫(kù)是基于簡(jiǎn)單文件系統(tǒng)存儲(chǔ)的,集中化管理 Java API 資源(構(gòu)件)的一個(gè)服務(wù)。倉(cāng)庫(kù)中的任何一個(gè)構(gòu)件都有其唯一的坐標(biāo),根據(jù)這個(gè)坐標(biāo)可以定義其在倉(cāng)庫(kù)中的唯一存儲(chǔ)路徑。得益于 Maven 的坐標(biāo)機(jī)制,任何 Maven 項(xiàng)目使用任何一個(gè)構(gòu)件的方式都是完全相同的,Maven 可以在某個(gè)位置統(tǒng)一存儲(chǔ)所有的 Maven 項(xiàng)目共享的構(gòu)件,這個(gè)統(tǒng)一的位置就是倉(cāng)庫(kù),項(xiàng)目構(gòu)建完畢后生成的構(gòu)件也可以安裝或者部署到倉(cāng)庫(kù)中,供其它項(xiàng)目使用。

2.倉(cāng)庫(kù)分為兩類(lèi):本地倉(cāng)庫(kù)和遠(yuǎn)程倉(cāng)庫(kù)。

2.1 遠(yuǎn)程倉(cāng)庫(kù)

遠(yuǎn)程倉(cāng)庫(kù)指通過(guò)各種協(xié)議如 file://和 http://訪問(wèn)的其它類(lèi)型的倉(cāng)庫(kù)。這些倉(cāng)庫(kù)可能是第三方搭建的真實(shí)的遠(yuǎn)程倉(cāng)庫(kù),用來(lái)提供他們的構(gòu)件下載(例如 repo.maven.apache.org 和uk.maven.org 是 Maven 的中央倉(cāng)庫(kù))。其它“遠(yuǎn)程”倉(cāng)庫(kù)可能是你的公司擁有的建立在文件或 HTTP 服務(wù)器上的內(nèi)部倉(cāng)庫(kù),用來(lái)在開(kāi)發(fā)團(tuán)隊(duì)間共享私有構(gòu)件和管理發(fā)布的。

2.2 本地倉(cāng)庫(kù)

本地倉(cāng)庫(kù)指本機(jī)的一份拷貝,用來(lái)緩存遠(yuǎn)程下載,包含你尚未發(fā)布的臨時(shí)構(gòu)件。

3.倉(cāng)庫(kù)配置

3.1 在 settings.xml 文件中配置本地倉(cāng)庫(kù)

本地倉(cāng)庫(kù)是開(kāi)發(fā)者本地電腦中的一個(gè)目錄,用于緩存從遠(yuǎn)程倉(cāng)庫(kù)下載的構(gòu)件。默認(rèn)的本地倉(cāng)庫(kù)是${user.home}/.m2/repository。用戶可使用 settings.xml 文件修改本地倉(cāng)庫(kù)。具體內(nèi)容如下:

<?xml version="1.0" encoding="UTF-8"?> <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"><!-- 本地倉(cāng)庫(kù)配置 --><localRepository>/put/your/local/repository/here</localRepository><!-- 省略,具體信息參考后續(xù)內(nèi)容。 --> </settings>

之后改為你電腦的絕對(duì)路徑默認(rèn)是注釋的:

3.2 在 settings.xml 文件中配置鏡像倉(cāng)庫(kù)(遠(yuǎn)程倉(cāng)庫(kù)):

也就是解決國(guó)外倉(cāng)庫(kù)下載安裝較慢的問(wèn)題,我們可以更換遠(yuǎn)程倉(cāng)庫(kù)。

如果倉(cāng)庫(kù) A 可以提供倉(cāng)庫(kù) B 存儲(chǔ)的所有內(nèi)容,那么就可以認(rèn)為 A 是 B 的一個(gè)鏡像。例如:在國(guó)內(nèi)直接連接中央倉(cāng)庫(kù)下載依賴(lài),由于一些特殊原因下載速度非常慢。這時(shí),我們可以使用阿里云提供的鏡http://maven.aliyun.com/nexus/content/groups/public/來(lái)替換中央倉(cāng)庫(kù) http://repol.maven.org/maven2/。修改 maven 的 setting.xml 文件,具體內(nèi)容如下:

<mirror> <!-- 指定鏡像 ID --> <id>nexus-aliyun</id> <!-- 匹配中央倉(cāng)庫(kù)。--> <mirrorOf>central</mirrorOf> <!-- 指定鏡像名稱(chēng) --> <name>Nexus aliyun</name> <!-- 指定鏡像路徑 --> <url>http://maven.aliyun.com/nexus/content/groups/public</url> </mirror>

默認(rèn)顯示:

之后復(fù)制粘貼上面的鏡像配置

4.倉(cāng)庫(kù)優(yōu)先級(jí)問(wèn)題:

本地倉(cāng)庫(kù),鏡像倉(cāng)庫(kù),中央倉(cāng)庫(kù)。

鏡像倉(cāng)庫(kù)=中央倉(cāng)庫(kù)。 鏡像倉(cāng)庫(kù)是用于替代中央倉(cāng)庫(kù)的。

倉(cāng)庫(kù)訪問(wèn)優(yōu)先級(jí):

4.1本地倉(cāng)庫(kù)

第一訪問(wèn)本地倉(cāng)庫(kù)。

4.2指定倉(cāng)庫(kù)

如果本地倉(cāng)庫(kù)不存在對(duì)應(yīng)信息,訪問(wèn)配置文件中指定的遠(yuǎn)程倉(cāng)庫(kù)。

這個(gè)遠(yuǎn)程倉(cāng)庫(kù)是第二優(yōu)先級(jí)。

4.3遠(yuǎn)程倉(cāng)庫(kù)

4.3.1鏡像倉(cāng)庫(kù)

鏡像倉(cāng)庫(kù)是 Maven 開(kāi)發(fā)過(guò)程中的首選遠(yuǎn)程倉(cāng)庫(kù),在本地倉(cāng)庫(kù)和指定倉(cāng)庫(kù)無(wú)法獲取資源

的時(shí)候,直接訪問(wèn)鏡像倉(cāng)庫(kù)。

4.3.2中央倉(cāng)庫(kù)

如果鏡像倉(cāng)庫(kù)不是中央倉(cāng)庫(kù),則會(huì)在訪問(wèn)鏡像倉(cāng)庫(kù)無(wú)法獲取資源后,訪問(wèn)中央倉(cāng)庫(kù)。

修改maven默認(rèn)倉(cāng)庫(kù)

maven從默認(rèn)倉(cāng)庫(kù)下載依賴(lài)速度很慢,這里我篩選了幾個(gè)比較快的倉(cāng)庫(kù)替換默認(rèn)倉(cāng)庫(kù),,因?yàn)橛锌赡軅}(cāng)庫(kù)中的依賴(lài)不全,所以最好多配置幾個(gè)倉(cāng)庫(kù)。

1.第一步

<mirrors><!-- 阿里云鏡像 --><mirror><id>nexus-aliyun</id><name>Nexus aliyun</name><url>http://maven.aliyun.com/nexus/content/groups/public/</url><mirrorOf>central</mirrorOf></mirror><!-- maven官方2號(hào)鏡像 --><mirror><id>repo2</id><name>Mirror from Maven Repo2</name><url>http://repo2.maven.org/maven2/</url><mirrorOf>central</mirrorOf></mirror><!-- maven的UK鏡像 --><mirror><id>ui</id><name>Mirror from UK</name><url>http://uk.maven.org/maven2/</url><mirrorOf>central</mirrorOf></mirror><!-- maven的UK鏡像 --><mirror><id>jboss-public-repository-group</id><mirrorOf>central</mirrorOf><name>JBoss Public Repository Group</name><url>http://repository.jboss.org/nexus/content/groups/public</url></mirror> </mirrors>

打開(kāi)maven_home/conf/settings.xml文件,找到mirrors標(biāo)簽,如下圖

?

2.第二步

插入倉(cāng)庫(kù)內(nèi)容,最終效果如下圖

<?xml version="1.0" encoding="UTF-8"?> <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"><!-- 本地倉(cāng)庫(kù)配置 --><!-- 省略,具體信息參考后續(xù)內(nèi)容。 --><mirrors><!-- mirror| Specifies a repository mirror site to use instead of a given repository. The repository that| this mirror serves has an ID that matches the mirrorOf element of this mirror. IDs are used| for inheritance and direct lookup purposes, and must be unique across the set of mirrors.|<mirror><id>mirrorId</id><mirrorOf>repositoryId</mirrorOf><name>Human Readable Name for this Mirror.</name><url>http://my.repository.com/repo/path</url></mirror>--><mirror><id>alimaven</id><name>aliyun maven</name><url>http://maven.aliyun.com/nexus/content/groups/public/</url><mirrorOf>central</mirrorOf> </mirror> </mirrors></settings>

?

總結(jié)

以上是生活随笔為你收集整理的Maven仓库配置中央仓库的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。