mirror和repository的區(qū)別分析
internal repository是指在局域網(wǎng)內(nèi)部搭建的repository,它跟central repository, jboss repository等的區(qū)別僅僅在于其URL是一個內(nèi)部網(wǎng)址
mirror則相當(dāng)于一個代理,它會攔截去指定的遠(yuǎn)程repository下載構(gòu)件的請求,然后從自己這里找出構(gòu)件回送給客戶端。配置mirror的目的一般是出于網(wǎng)速考慮。
可以看出,internal repository和mirror是兩碼事。前者本身是一個repository,可以和其它repository一起提供服務(wù),比如它可以用來提供公司內(nèi)部的maven構(gòu)件;而后者本身并不是repository,它只是遠(yuǎn)程repository的網(wǎng)絡(luò)加速器。
不過,很多internal repository搭建工具往往也提供mirror服務(wù),比如Nexus就可以讓同一個URL,既用作internal repository,又使它成為所有repository的mirror。
如果倉庫X可以提供倉庫Y存儲的所有內(nèi)容,那么就可以認(rèn)為X是Y的一個鏡像。換句話說,任何一個可以從倉庫Y獲得的構(gòu)件,都胡夠從它的鏡像中獲取。舉個例子, 是中央倉庫 在中國的鏡像,由于地理位置的因素,該鏡像往往能夠提供比中央倉庫更快的務(wù)。因此,可以配置Maven使用該鏡像來替代中央倉庫。編輯setTIngs.xml,代碼如下:
<setTIngs>