天天看點

ideal pom檔案安裝到maven庫中_基于idea的maven(一)Maven的安裝

1.Maven前置依賴

檢查電腦是是否安裝java

ideal pom檔案安裝到maven庫中_基于idea的maven(一)Maven的安裝

2.下載下傳maven

ideal pom檔案安裝到maven庫中_基于idea的maven(一)Maven的安裝
ideal pom檔案安裝到maven庫中_基于idea的maven(一)Maven的安裝
ideal pom檔案安裝到maven庫中_基于idea的maven(一)Maven的安裝
ideal pom檔案安裝到maven庫中_基于idea的maven(一)Maven的安裝

解壓 maven 壓縮包,

ideal pom檔案安裝到maven庫中_基于idea的maven(一)Maven的安裝

并建立相應的maven本地倉庫的路徑。

ideal pom檔案安裝到maven庫中_基于idea的maven(一)Maven的安裝

打開 conf檔案夾中 修改 settings.xml 檔案

ideal pom檔案安裝到maven庫中_基于idea的maven(一)Maven的安裝

2.配置環境變量

maven已經完成了安裝,我們可以通過DOS指令檢查一下我們是否安裝成功: mvn -v

ideal pom檔案安裝到maven庫中_基于idea的maven(一)Maven的安裝
ideal pom檔案安裝到maven庫中_基于idea的maven(一)Maven的安裝

3. settings.xml 的修改和研究

setting.xml的配置檔案分類(更改配置的本地倉庫)

(1)直接修改Maven中conf檔案夾中的setting.xml檔案

注:此時更改後,所有的使用者都會受到影響,而且如果maven進行更新,那麼所有的配置都會被清除,是以要提前複制和備份/conf/settings.xml檔案

(2)在.m2檔案夾下建立一個setting·xml檔案

ideal pom檔案安裝到maven庫中_基于idea的maven(一)Maven的安裝

(3).(多說一下)項目裡的pom.xml

ideal pom檔案安裝到maven庫中_基于idea的maven(一)Maven的安裝

有個優先級的,應該是pom>使用者級别>全局級别

例:如果pom中不配置,就取使用者級别,如果使用者級别也沒有配置,就取全局級别

故:一般情況下不推薦配置全局的settings.xml

第一點:鏡像的配置

setting.xml裡面有個mirrors節點,用來配置鏡像URL。mirrors可以配置多個mirror,每個mirror有id,name,url,mirrorOf屬性。

id是唯一辨別一個mirror

name貌似沒多大用,相當于描述

url是官方的庫位址

mirrorOf代表了一個鏡像的替代位置,例如central就表示代替官方的中央庫。

mirror也不是按settings.xml中寫的那樣的順序來查詢的。所謂的第一個并不一定是最上面的那個。

當有id為B,A,C的順序的mirror在mirrors節點中,maven會根據字母排序來指定第一個,是以不管怎麼排列,一定會找到A這個mirror來進行查找,當A無法連接配接,出現意外的情況下,才會去B查詢。

在setting·xml中添加如下代碼:

nexus

*

http://maven.aliyun.com/nexus/content/groups/public/

nexus-public-snapshots

public-snapshots

http://maven.aliyun.com/nexus/content/repositories/snapshots/

第二點:指定本地路徑和修改

這是直接修改的maven中conf中的setting.xml檔案,此時配置的maven的本地倉庫是屬于使用者範圍的。

D:/repository

4. idea 安裝maven插件

(1)安裝maven插件

ideal pom檔案安裝到maven庫中_基于idea的maven(一)Maven的安裝

(2)對maven的maven插件進行相關配置

ideal pom檔案安裝到maven庫中_基于idea的maven(一)Maven的安裝

4.詳解pom

Maven在某個統一的位置存儲所有項目的共享的構件,這個統一的位置,我們就稱之為倉庫。(倉庫就是存放依賴和插件的地方)

任何的構件都有唯一的坐标,Maven根據這個坐标定義了構件在倉庫中的唯一存儲路徑,

pom裡面的倉庫與setting.xml裡的倉庫功能是一樣的。主要的差別在于:pom裡的倉庫是個性化的。

比如一家大公司裡的setting檔案是公用的,所有項目都用一個setting檔案,但各個子項目卻會引用不同的第三方庫,是以就需要在pom裡設定自己需要的倉庫位址。

解讀Maven在倉庫中的存儲路徑:

基于groupId準備路徑,将句點分隔符轉成路徑分隔符,就是将  "."  轉換成 "/" ; example: org.testng --->org/testng

基于artifactId準備路徑,将artifactId連接配接到後面:org/testng/testng

使用version準備路徑,将version連接配接到後面:org/testng/testng/5.8

将artifactId于version以分隔符連字号連接配接到後面:org/testng/testng/5.8/tesng-5.8

判斷如果構件有classifier,就要在 第4項 後增加 分隔符連字号 再加上 classifier,org/testng/testng/5.8/tesng-5.8-jdk5

檢查構件的extension,如果extension存在,則加上句點分隔符和extension,而extension是由packing決定的,org/testng/testng/5.8/tesng-5.8-jdk5.jar

ideal pom檔案安裝到maven庫中_基于idea的maven(一)Maven的安裝
ideal pom檔案安裝到maven庫中_基于idea的maven(一)Maven的安裝

有兩種pom檔案。第一個是項目級别的pom,第二種是子產品級别的pom

項目級别的pom:

ideal pom檔案安裝到maven庫中_基于idea的maven(一)Maven的安裝