【項目管理和構建】——Maven下載、安裝和配置(二)

Maven主要做的是兩件事:

  1. 統一開發規範與工具

  2. 統一管理jar包

這兩件事情他都做到了,而且還做了更多的事情。Maven還可以管理項目的整個聲明週期,包括編 譯,構建,測試,發佈,報告等等。目前Apache下絕大多數項目都已經採用Maven進行管理。而Maven本身還支持多種插件,可以方便更靈活的控制項目。

工欲善其事,必先利其器。咱們也來玩玩 Maven 這貨吧!先得去下載一個。

準備工作

安裝

安裝maven超級簡單,總共分四步:

  1. 下載 Maven ,其實就是一個壓縮包,解壓一下

    這裏寫圖片描述

  2. 配置一下環境變量

    有兩個環境變量可以配置:

    • MAVEN_HOME = D:\maven\apache-maven-3.2.3

    • MAVEN_OPTS = -Xms128m -Xmx512m(可選)

  3. 在path變量末尾加入“%MAVEN_HOME%\bin;”。

    以上M2_HOME 是必須要配置的,如果想讓 Maven 跑得更快點,可以根據自己的情況來設置 MAVEN_OPTS。 
    這裏寫圖片描述

  4. 最後,驗證是否安裝成功

    現在我們打開 cmd,輸入:

    mvn -v

    我想您一定會看到一些信息,如下圖所示: 
    這裏寫圖片描述

恭喜您,Maven 安裝成功!

在使用 Maven 之前,我們必須要了解一下 Maven 到底是怎樣管理 jar 包的,這就是 Maven 倉庫要乾的活了。

瞭解Maven倉庫

使用 Maven 給我們帶來的最直接的好處,就是統一管理jar 包,那麼這些 jar 包存放在哪裏呢?它們就在您的 本地倉庫 中,默認地址位於 C:\Users\用戶名.m2 目錄下(當然也可以修改這個默認地址),下面我們就修改一下這個默認地址。

實際上我們可以將本地倉庫理解“緩存”,目的是存放jar包。開發項目時項目首先會從本地倉庫中獲取 jar 包,當無法獲取指定 jar 包的時候,本地倉庫會從 遠程倉庫(或 中央倉庫) 中下載 jar 包,並“緩存”到本地倉庫中以備將來使用。

遠程倉庫(中央倉庫)是 Maven 官方提供的,可通過 http://search.maven.org/ 來訪問。這樣一來,本地倉庫會隨着項目的積累越來越大。通過下面這張圖可以清晰地表達項目、本地倉庫、遠程倉庫之間的關係。

這裏寫圖片描述

既然 Maven 安裝了,那麼本地倉庫也就有了,默認路徑在我們C盤目錄下,對於專業人士來說C盤很危險,下面我們修改一下默認配置。

配置

Maven會將下載的類庫(jar包)放置到本地的一個目錄下,如果想重新定義這個目錄的位置就需要修改Maven本地倉庫的配置:

修改文件:D:\maven\apache-maven-3.2.3\conf\setting.xml

<code class="language-xml hljs  has-numbering" style="display: block; padding: 0px; background-color: transparent; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-top-left-radius: 0px; border-top-right-radius: 0px; border-bottom-right-radius: 0px; border-bottom-left-radius: 0px; word-wrap: normal; background-position: initial initial; background-repeat: initial initial;"><span class="hljs-tag" style="color: rgb(0, 102, 102); box-sizing: border-box;"><<span class="hljs-title" style="box-sizing: border-box; color: rgb(0, 0, 136);">settings</span> <span class="hljs-attribute" style="box-sizing: border-box; color: rgb(102, 0, 102);">xmlns</span>=<span class="hljs-value" style="box-sizing: border-box; color: rgb(0, 136, 0);">"http://maven.apache.org/SETTINGS/1.0.0"</span> 
              <span class="hljs-attribute" style="box-sizing: border-box; color: rgb(102, 0, 102);">xmlns:xsi</span>=<span class="hljs-value" style="box-sizing: border-box; color: rgb(0, 136, 0);">"http://www.w3.org/2001/XMLSchema-instance"</span> 
              <span class="hljs-attribute" style="box-sizing: border-box; color: rgb(102, 0, 102);">xsi:schemaLocation</span>=<span class="hljs-value" style="box-sizing: border-box; color: rgb(0, 136, 0);">"http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"</span>></span>
      <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;"><!-- localRepository
       | The path to the local repository maven will use to store artifacts.
       |
       | Default: ${user.home}/.m2/repository
      <localRepository>/path/to/local/repo</localRepository>
      --></span>
        <span class="hljs-tag" style="color: rgb(0, 102, 102); box-sizing: border-box;"><<span class="hljs-title" style="box-sizing: border-box; color: rgb(0, 0, 136);">localRepository</span>></span>D:\maven\repository<span class="hljs-tag" style="color: rgb(0, 102, 102); box-sizing: border-box;"></<span class="hljs-title" style="box-sizing: border-box; color: rgb(0, 0, 136);">localRepository</span>></span>

<span class="hljs-tag" style="color: rgb(0, 102, 102); box-sizing: border-box;"></<span class="hljs-title" style="box-sizing: border-box; color: rgb(0, 0, 136);">settings</span>></span></code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; background-color: rgb(238, 238, 238); top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right;"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li><li style="box-sizing: border-box; padding: 0px 5px;">10</li><li style="box-sizing: border-box; padding: 0px 5px;">11</li><li style="box-sizing: border-box; padding: 0px 5px;">12</li></ul><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; background-color: rgb(238, 238, 238); top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right;"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li><li style="box-sizing: border-box; padding: 0px 5px;">10</li><li style="box-sizing: border-box; padding: 0px 5px;">11</li><li style="box-sizing: border-box; padding: 0px 5px;">12</li></ul>

依據該配置,Maven就會將下載的類庫保存到D:\maven\repository中。

實驗一下我們剛纔做的事情產生作用沒有,控制檯輸入:

mvn help:system

如圖所示效果: 
這裏寫圖片描述

如果沒有任何問題,執行完該命令之後,在D:\maven\repository下面就會多出很多文件,這些文件就是maven從中央倉庫下載到本地倉庫的文件,maven已經開始爲我們工作了。

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