maven基礎

技術小胖子發表於2017-11-08

Maven基礎

maven核心內容:依賴管理、

Maven是Apache組織的開源專案,是專案構建工具。用來管理jar包之間的相互依賴關係

Maven是一個專案構建和管理的工具,提供了幫助管理,構建,文件,報告,依賴,釋出,分發的方法、可以方便的編譯程式碼,進行依賴管理、管理二進位制庫等

1. maven的好處

maven的好處在於可以將專案過程規範化,自動化,高效化以及強大的可擴充套件性

利用maven自身以及其外掛還可以獲得程式碼檢查報告,單元測試覆蓋率,實現持續整合等等

座標:作為jar包,如何給出座標

舉例:struts2-core-2.3.24.jar

Apache(公司)+struts2(專案名稱)+2.3.24(版本資訊)

maven專案中需要某一個jar包,只需要在maven專案中配置需要的jar包座標資訊。maven程式根據jar包座標資訊去jar包倉庫中查詢jar包

2. maven的好處如何實現

maven的兩大核心:

** 依賴管理:對jar包管理過程

** 專案構建:專案在編碼完成後,對專案進行編譯,打包,測試,部署等一系列操作通過命令來實現

  使用maven命令將web專案釋出到tomcat

進入一個maven的web專案,執行命令mvn tomat:run

3. maven安裝、配置本地倉庫

maven程式安裝前提:maven程式是java開發,需要安裝jdk程式

mvn -v:檢視maven版本資訊

  1) maven的下載安裝

<1>下載maven:

下載後解壓(解壓目錄路徑最好不要有中文)

<2>解壓後目錄:

bin:可執行的指令碼

lib:執行需要的依賴包

conf:配置檔案

boot:

<3>配置maven的環境變數

MAVEN_HOME:xxxxxxxxx

PATH:xxxxxxxxin;

JDK環境變數必須配置

JAVA_HOME:maven專案會搜尋改環境變數,否則無法執行

  2) 配置本地倉庫

倉庫型別:本地倉庫–>私服–>中央倉庫

    進入maven程式解壓後的目錄中

配置conf中的setting.xml檔案

<localRepository>jar包的路徑</localRepository>

4. maven專案標準目錄結構

src:專案原始碼目錄

main/java:專案原始碼

main/resources:專案配置檔案

main/webapp:js、css、jsp、web.xml等檔案

test/:測試目錄

  target:

pom.xml:project object model maven專案核心配置檔案

5. maven的常用命令

1. clean:清理

mvn clean

就是刪除maven專案下的target目錄,編譯的class檔案等

  2. compile:編譯

mvn compile

將專案中的.java檔案編譯為.class檔案

  3. test:單元測試

mvn test

將專案根目錄下src/test/java目錄下的單元測試類都會執行

對單元測試類的類名有要求:必須以Test.java結尾

  4. package:打包

mvn package

web project –war包

java project –jar包

將專案打包,打包專案到根目錄下target目錄

5. install:安裝

本地多個專案公用一個jar包

打包到本地倉庫

  6. maven專案的生命週期

在maven中存在三套宣告週期,每一套宣告週期都是相互獨立的,互不影響。在一套宣告週期中,執行後面的命令,前面的操作都會自動執行

    CleanLifeCycle:清理的生命週期(clean)

defaultLifeCycle:預設宣告週期(compile、test、package、install、deploy)

siteLifeCycle:站點宣告週期(site)

6. maven整合web專案案例

1. eclipse配置maven

              

               

  

                

 



構建索引:

                

 



右擊從新構建索引

2. 建立maven專案

              

 



   maven project:建立maven專案或者父專案

maven module:建立maven子模組(子專案)

group id:公司名稱 com.major

artifact id:專案名稱 crm

Version:版本

Packaging:jar/pom/war 打包(pom父工程選擇pom)

Name:

Description:

  pom.xml新增資訊

<!– 新增jdk版本資訊–>

複製程式碼

1.    <build>  2.        <plugins>  3.            <plugin>  4.                <groupId>org.apache.maven.plugins</groupId>  5.                <artifactId>maven-compiler-plugin</artifactId>  6.                <configuration>  7.                    <source>1.7</source>  8.                    <target>1.7</target>  9.                </

本文轉自zsdnr 51CTO部落格,原文連結:http://blog.51cto.com/12942149/1949717,如需轉載請自行聯絡原作者



相關文章