Java初轉型-Maven入門

來源:互聯網
上載者:User

標籤:系統內容   com   tar   snapshot   命名   instance   存在   好的   int   

 原系列名:Maven學習總結(一)

原博文出自於:http://www.cnblogs.com/xdp-gacl/p/3498271.html        感謝!

 

一、Maven的基本概念

  Maven(翻譯為"專家","內行")是跨平台的專案管理工具。主要服務於基於Java平台的項目構建,依賴管理和項目資訊管理。

1.1、項目構建

  項目構建過程包括【清理項目】→【編譯項目】→【測試專案】→【產生測試報告】→【打包項目】→【部署項目】這幾個步驟,這六個步驟就是一個項目的完整構建過程。

 理想的項目構建是高度自動化,跨平台,可重用的組件,標準化的,使用maven就可以幫我們完成上述所說的項目構建過程。

1.2、依賴管理

  依賴指的是jar包之間的相互依賴,比如我們搭建一個Struts2的開發架構時,光光有struts2-core-2.3.16.3.jar這個jar包是不行的,struts2-core-2.3.16.3.jar還依賴其它的jar包,依賴管理指的就是使用Maven來管理項目中使用到的jar包,Maven管理的方式就是“自動下載項目所需要的jar包,統一管理jar包之間的依賴關係”。

1.3、使用Maven的好處

  Maven中使用約定,約定java原始碼代碼必須放在哪個目錄下,編譯好的java代碼又必須放到哪個目錄下,這些目錄都有明確的約定。

  Maven的每一個動作都擁有一個生命週期,例如執行 mvn install 就可以自動執行編譯,測試,打包等構建過程

  只需要定義一個pom.xml,然後把源碼放到預設的目錄,Maven幫我們處理其他事情

  使用Maven可以進行項目高度自動化構建,依賴管理(這是使用Maven最大的好處),倉庫管理。

 

 

二、Maven下載

  :http://maven.apache.org/download.cgi

 

下載完成後,得到一個壓縮包 ,解壓,可以看到maven的組成目錄

 

Maven目錄分析

  • bin:含有mvn啟動並執行指令碼
  • boot:含有plexus-classworlds類載入器架構
  • conf:含有settings.xml設定檔
  • lib:含有Maven運行時所需要的java類庫
  • LICENSE.txt, NOTICE.txt, README.txt針對Maven版本,第三方軟體等簡要介

 

 

三、Maven安裝

  1、首先要確保電腦上已經安裝了JDK(要jdk 1.6+的版本),配置好JDK的環境變數,使用如下的兩個命令檢查檢查JDK安裝的情況。

1 Echo %JAVA_HOME%2 Java -version

 

 

2、對apache-maven-3.2.3-bin.zip進行解壓縮

  對apache-maven-3.2.3-bin.zip進行解壓縮,例如解壓到如下目錄(解壓目錄最好不要有中文)

 

 3、設定系統內容變數:MAVEN_HOME

 

4、設定環境變數Path,將%MAVEN_HOME%\bin加入Path中,一定要注意要用分號;與其他值隔開,如所示:

%MAVEN_HOME%\bin代表的就是"E:\apache-maven-3.2.3\bin"目錄

  5、驗證Maven安裝是否成功

  開啟cmd視窗

輸入"mvn –v"命令 查看Maven的相關資訊,如所示:

能夠出現這樣的資訊就說明Maven的安裝已經成功了。

  6、設定MAVEN_OPTS環境變數(可選配置)

  由於Maven命令實際上是執行了Java命令,所以可以通過JAVA命令參數的方式來設定MAVEN運行參數。MAVEN_OPTS環境變數正是用於此用途

  MAVEN_OPTS

  -Xms128m -Xmx512m,分別設定JVM的最小和最大記憶體,如所示:

 

 

 

四、Maven的簡單使用4.1、Maven項目的目錄約定

MavenProjectRoot(項目根目錄)
   |----src
   |     |----main
   |     |         |----java ——存放項目的.java檔案
   |     |         |----resources ——存放項目資源檔,如spring, hibernate設定檔
   |     |----test
   |     |         |----java ——存放所有測試.java檔案,如JUnit測試類別
   |     |         |----resources ——存放項目資源檔,如spring, hibernate設定檔
   |----target ——項目輸出位置
   |----pom.xml ----用於標識該項目是一個Maven項目

4.2、手動建立Maven項目,使用Maven編譯

  1、建立項目根資料夾,例如Maven01

 

  2、在Maven01檔案夾中建立“pom.xml”檔案,如所示:

  pom.xml檔案中的內容如下:

 

 <?xml version="1.0" encoding="UTF-8"?> 2 <project xmlns="http://maven.apache.org/POM/4.0.0"  3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  4 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0  5 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 6     <!--所有的Maven項目都必須配置這四個配置項--> 7     <modelVersion>4.0.0</modelVersion> 8     <!--groupId指的是項目名的項目組,預設就是包名--> 9     <groupId>cn.gacl.maven.hello</groupId>10     <!--artifactId指的是項目中的某一個模組,預設命名方式是"項目名-模組名"-->11     <artifactId>hello-first</artifactId>12     <!--version指的是版本,這裡使用的是Maven的快照版本-->13     <version>SNAPSHOT-0.0.1</version>14 </project>

 

 3.編寫Java類檔案,Maven項目規定,所有的*.java檔案必須放在src目錄下的main目錄下的java目錄中,在Maven01項目根目錄中建立一個src目錄,然後在src目錄中建立main目錄,在main目錄中再建立java檔案夾,如所示:

在java檔案夾下建立一個Hello.java檔案,如所示

在Hello.java檔案中編寫如下代碼:

public class Hello{2     public static void main(String[] args){3         System.out.println("Hello Maven");4     }5 }


4.使用Maven編譯Hello.java,首先進入到項目根目錄,然後使用命令”mvn compile”進行編譯,如所示:

使用Maven編譯完成之後,在項目根目錄下會產生一個target檔案夾,如所示:

開啟target檔案夾,可以看到裡面有一個classes檔案夾,如所示:

classes檔案夾存放的就是編譯成功後產生的.class檔案,如所示:

 

 5.使用"mvn clean"命令清除編譯結果,也就是把編譯產生的target檔案夾刪掉,如所示:

執行完"mvn clean"命令後,target檔案夾就會被刪除了。

 

 

五、修改從Maven中心倉庫下載到本地的jar包的預設儲存位置

  從Maven中心倉庫下載到本地的jar包的預設存放在”${user.home}/.m2/repository”中,${user.home}表示當前登入系統的使用者目錄(如"C:\Users\gacl"),如所示

 

 

 

 

Jar包存放在這個位置不太好,我們希望能夠自己定義下載下來的jar包的存放位置,因此我們可以自己設定下載到本地時的jar包的存放目錄。

  在“E:\”目錄下建立一個“repository”檔案夾

 

找到apache-maven-3.2.3\conf目錄下的settings.xml檔案,如所示:

 

 

 

 編輯setting.xml檔案,如所示:

 

 

加上下面的代碼

1 <localRepository>E:/repository</localRepository>

 


這樣就可以把jar包下載到我們指定的E:/repository目錄中了,如所示:

 


把jar包下載到本地的好處就是,當編譯時間,會優先從本地的jar包去找,如果本地存在,就直接拿來用,如果不存在,就從Maven的中心倉庫去下載。如所示:

 

  第一次執行"mvn compile"和"mvn clean"這兩個命令時,Maven會去中央倉庫下載需要的jar包,而第二次執行這兩個命令時,由於所需的jar包已經在本地的倉庫中儲存,所以就可以直接拿來用了,這樣就省去了去中央倉庫下載jar包的時間。

  以上就是Maven的簡單入門講解。

Java初轉型-Maven入門

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.