【第六篇】- Maven 倉庫之Spring Cloud直播商城 b2b2c電子商務技術總結
Maven 倉庫
在 Maven 的術語中,倉庫是一個位置(place)。
Maven 倉庫是專案中依賴的第三方庫,這個庫所在的位置叫做倉庫。
在 Maven 中,任何一個依賴、外掛或者專案構建的輸出,都可以稱之為構件。
Maven 倉庫能幫助我們管理構件(主要是JAR),它就是放置所有JAR檔案(WAR,ZIP,POM等等)的地方。
Maven 倉庫有三種型別:
- 本地(local)
- 中央(central)
- 遠端(remote)
本地倉庫
Maven 的本地倉庫,在安裝 Maven 後並不會建立,它是在第一次執行 maven 命令的時候才被建立。
執行 Maven 的時候,Maven 所需要的任何構件都是直接從本地倉庫獲取的。如果本地倉庫沒有,它會首先嚐試從遠端倉庫下載構件至本地倉庫,然後再使用本地倉庫的構件。
預設情況下,不管Linux還是 Windows,每個使用者在自己的使用者目錄下都有一個路徑名為 .m2/respository/ 的倉庫目錄。
Maven 本地倉庫預設被建立在 %USER_HOME% 目錄下。要修改預設位置,在 %M2_HOME%\conf 目錄中的 Maven 的 settings.xml 檔案中定義另一個路徑。
當你執行 Maven 命令,Maven 將下載依賴的檔案到你指定的路徑中。
中央倉庫
Maven 中央倉庫是由 Maven 社群提供的倉庫,其中包含了大量常用的庫。
中央倉庫包含了絕大多數流行的開源Java構件,以及原始碼、作者資訊、SCM、資訊、許可證資訊等。一般來說,簡單的Java專案依賴的構件都可以在這裡下載到。
中央倉庫的關鍵概念:
- 這個倉庫由 Maven 社群管理。
- 不需要配置。
- 需要透過網路才能訪問。
要瀏覽中央倉庫的內容,maven 社群提供了一個 URL: 。使用這個倉庫,開發人員可以搜尋所有可以獲取的程式碼庫。
遠端倉庫
如果 Maven 在中央倉庫中也找不到依賴的檔案,它會停止構建過程並輸出錯誤資訊到控制檯。為避免這種情況,Maven 提供了遠端倉庫的概念,它是開發人員自己定製倉庫,包含了所需要的程式碼庫或者其他工程中用到的 jar 檔案。
舉例說明,使用下面的 pom.xml,Maven 將從遠端倉庫中下載該 pom.xml 中宣告的所依賴的(在中央倉庫中獲取不到的)檔案。
Maven 依賴搜尋順序
當我們執行 Maven 構建命令時,Maven 開始按照以下順序查詢依賴的庫:
- 步驟 1 - 在本地倉庫中搜尋,如果找不到,執行步驟 2,如果找到了則執行其他操作。
- 步驟 2 - 在中央倉庫中搜尋,如果找不到,並且有一個或多個遠端倉庫已經設定,則執行步驟 4,如果找到了則下載到本地倉庫中以備將來引用。
- 步驟 3 - 如果遠端倉庫沒有被設定,Maven 將簡單的停滯處理並丟擲錯誤(無法找到依賴的檔案)。
- 步驟 4 - 在一個或多個遠端倉庫中搜尋依賴的檔案,如果找到則下載到本地倉庫以備將來引用,否則 Maven 將停止處理並丟擲錯誤(無法找到依賴的檔案)。
Maven 阿里雲(Aliyun)倉庫
Maven 倉庫預設在國外, 國內使用難免很慢,我們可以更換為阿里雲的倉庫。
修改 maven 根目錄下的 conf 資料夾中的 settings.xml 檔案,在 mirrors 節點上,新增內容如下:
第二步: pom.xml檔案裡新增:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70006413/viewspace-2790894/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Maven POM之Spring Cloud直播商城 b2b2c電子商務技術總結MavenSpringCloud
- 【第五篇】- Git 建立倉庫之Spring Cloud直播商城 b2b2c電子商務技術總結GitSpringCloud
- [第十一篇]——Docker 倉庫管理之Spring Cloud直播商城 b2b2c電子商務技術總結DockerSpringCloud
- [第六篇]——雲伺服器之Spring Cloud直播商城 b2b2c電子商務技術總結伺服器SpringCloud
- Maven 構建生命週期之Spring Cloud直播商城 b2b2c電子商務技術總結MavenSpringCloud
- Maven 構建配置檔案之Spring Cloud直播商城 b2b2c電子商務技術總結MavenSpringCloud
- 【第三篇】- Maven POM之Spring Cloud直播商城 b2b2c電子商務技術總結MavenSpringCloud
- 【第十八篇】- Maven Eclipse之Spring Cloud直播商城 b2b2c電子商務技術總結MavenEclipseSpringCloud
- 【第十九篇】- Maven NetBeans之Spring Cloud直播商城 b2b2c電子商務技術總結MavenBeanSpringCloud
- 【第二十篇】-Maven IntelliJ之Spring Cloud直播商城 b2b2c電子商務技術總結MavenIntelliJSpringCloud
- Maven 環境配置之Spring Cloud直播商城 b2b2c電子商務技術總結MavenSpringCloud
- Maven 構建 & 專案測試之Spring Cloud直播商城 b2b2c電子商務技術總結MavenSpringCloud
- 【第十三篇】- Maven 快照(SNAPSHOT)之Spring Cloud直播商城 b2b2c電子商務技術總結MavenSpringCloud
- 【第十一篇】- Maven 專案模板之Spring Cloud直播商城 b2b2c電子商務技術總結MavenSpringCloud
- 【第七篇】- Maven 外掛之Spring Cloud直播商城 b2b2c電子商務技術總結MavenSpringCloud
- 【第十二篇】- Maven 專案文件之Spring Cloud直播商城 b2b2c電子商務技術總結MavenSpringCloud
- 【第十五篇】- Maven 依賴管理之Spring Cloud直播商城 b2b2c電子商務技術總結MavenSpringCloud
- 【第十篇】- Git 遠端倉庫(Github)之Spring Cloud直播商城 b2b2c電子商務技術總結GithubSpringCloud
- 【第十六篇】- Maven 自動化部署之Spring Cloud直播商城 b2b2c電子商務技術總結MavenSpringCloud
- 【第十七篇】- Maven Web 應用之Spring Cloud直播商城 b2b2c電子商務技術總結MavenWebSpringCloud
- 【第八篇】- Maven 構建 Java 專案之Spring Cloud直播商城 b2b2c電子商務技術總結MavenJavaSpringCloud
- 【第十篇】- Maven 引入外部依賴之Spring Cloud直播商城 b2b2c電子商務技術總結MavenSpringCloud
- 【第五篇】-Maven 構建配置檔案之Spring Cloud直播商城 b2b2c電子商務技術總結MavenSpringCloud
- 【第四篇】- Maven 構建生命週期之Spring Cloud直播商城 b2b2c電子商務技術總結MavenSpringCloud
- 【第十四篇】- Maven 自動化構建之Spring Cloud直播商城 b2b2c電子商務技術總結MavenSpringCloud
- 【第二篇】- Maven 環境配置之Spring Cloud直播商城 b2b2c電子商務技術總結MavenSpringCloud
- 【第一篇】- Maven 系列教程之Spring Cloud直播商城 b2b2c電子商務技術總結MavenSpringCloud
- 【第十一篇】- Git Gitee之Spring Cloud直播商城 b2b2c電子商務技術總結GiteeSpringCloud
- [第十二篇]——Docker Dockerfile之Spring Cloud直播商城 b2b2c電子商務技術總結DockerSpringCloud
- [第十三篇]——Docker Compose之Spring Cloud直播商城 b2b2c電子商務技術總結DockerSpringCloud
- [第十四篇]——Docker Machine之Spring Cloud直播商城 b2b2c電子商務技術總結DockerMacSpringCloud
- 【第九篇】- Maven 構建 & 專案測試之Spring Cloud直播商城 b2b2c電子商務技術總結MavenSpringCloud
- 【第九篇】- Git 標籤之Spring Cloud直播商城 b2b2c電子商務技術總結GitSpringCloud
- [第二篇]——Docker 架構之Spring Cloud直播商城 b2b2c電子商務技術總結Docker架構SpringCloud
- [第五篇]——Docker 映象加速之Spring Cloud直播商城 b2b2c電子商務技術總結DockerSpringCloud
- 【第七篇】- Git 分支管理之Spring Cloud直播商城 b2b2c電子商務技術總結GitSpringCloud
- [第三篇]——CentOS Docker 安裝之Spring Cloud直播商城 b2b2c電子商務技術總結CentOSDockerSpringCloud
- [第四篇]——Windows Docker 安裝之Spring Cloud直播商城 b2b2c電子商務技術總結WindowsDockerSpringCloud