《maven基礎》5-倉庫

上一節講maven的生命週期,生命週期install:打包發佈到本地倉庫。deploy:打包發佈到遠程倉庫

那麼倉庫是什麼呢,倉庫跟我們生活中貨物倉庫的意思差不多,maven倉庫是指向一個地址,地址裏面保存了很多jar/war/pom等maven管理的目標文件,

maven重的倉庫有多個:本地倉庫/中央倉庫/遠程倉庫

本地倉庫:local repository,指安裝maven時我們指向的文件目錄:

一般是我們當前用戶下的/.m2/路徑:/Users/david/.m2

有配置文件settings.xml:

<?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">
  
  <!-- 本地倉庫的配置-->
 <localRepository>/Users/david/.m2/repository</localRepository>

</settings>

看到我們本地倉庫的地址是.m2/repository/文件夾,我們看目錄下有啥

存放了很多文件夾,文件夾裏面都是maven管理的jar/war/pom等文件

中央倉庫:maven默認的倉庫,包含了大量的開源的jar,不需要手動配置,默認加載

中央倉庫是官方維護的倉庫,一般開發人員只能依賴,不能發佈到該倉庫。

http://search.maven.org/#browse 該目錄可以訪問中央倉庫,查詢依賴

遠程倉庫:公司或者開發者自己定義一個遠程倉庫,存放自己的的依賴文件。

<repositories>
           <repository>
                    <id>****-nexus</id>
                    <url>http://ip:port/nexus/content/groups/public</url>
                    <releases>
                        <enabled>true</enabled>
                    </releases>
                    <snapshots>
                        <enabled>true</enabled>
                    </snapshots>
           </repository>
</repositories>

repositories節點可以配置多個repository,這些遠程倉庫可以存放公司級和私人的依賴文件

鏡像:mirror

鏡像倉庫地址,可以替換倉庫地址,比如我們的中央倉庫是maven負責管理,倉庫地址在國外,國內訪問速度比較慢,可以用其他較爲全面的倉庫地址替換比如aliyun倉庫

<mirrors>
    <mirror>
            <id>aliyun</id>
            <mirrorOf>central</mirrorOf>
            <name>Nexus aliyun</name>
            <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
    </mirror>
</mirrors>

看到mirrorOf 指向的central倉庫,當我們需要訪問central倉庫的時候,會直接去訪問aliyun 倉庫。

依賴查找順序:

1.本地倉庫-2.中央倉庫-3.遠程倉庫

這樣的訪問順序說明,首先查找本地是否已經存在,不存在的話查找中央倉庫是否存在,中央倉庫不存在會查詢遠程倉庫,都不存在的情況下會報錯。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章