maven使用筆記

在開發過程當中會用到maven,因此對maven進行了簡單的學習。java

準備工做web

  • Jdk1.5以上的java開發環境
  • Maven
第一步:配置maven環境

將下載的文件加壓,而後設置maven環境,對於有java開發經驗的人,應該是很easy的。如的maven的環境是: G:\maven\apache-maven-3.3.1
個人電腦----屬性----高級----環境變量----新建apache

變量名:M2_HOME
變量值:G:\maven\apache-maven-3.3.1windows

找到path環境變量
在環境的變量的尾部加上:;%M2_HOME%\bin;,注意前面的分號哦,固然你也能夠直接在path路徑的尾部直接加上 G:\maven\apache-maven-3.3.1\bin,只是上面的方式更優雅一點。oracle

打開命令提示符(開始----運行----cmd),檢查maven環境是否配置成功。運行下面命令app

mvn -veclipse

Apache Maven 3.3.1 (cab6659f9874fa96462afef40fcf6bc033d58c1c; 2015-03-14T04:10:27+08:00)
Maven home: G:\maven\apache-maven-3.3.1
Java version: 1.7.0_09, vendor: Oracle Corporation
Java home: C:\Java\jdk1.7.0_09\jre
Default locale: zh_CN, platform encoding: GBK
OS name: "windows 8", version: "6.2", arch: "x86", family: "windows"
第二步:修改倉庫位置

接下來須要修改下倉庫地址,倉庫用於存放咱們項目因此來的全部的jar
個人倉庫路徑:G:\maven\repo,這個路徑你能夠隨便建立。
打開maven的安裝目錄,進入到G:\maven\apache-maven-3.3.1\conf,編輯setting.xml文件,設置咱們建立的倉庫路徑webapp

<localRepository>G:/maven/repo</localRepository>

設置完成以後,能夠用一個命令驗證一下。在命令提示符中執行:maven

mvn help:system工具

這個命令會打印出全部的java系統屬性和環境變量。若是運行沒有錯誤,在咱們建立的那個倉庫目錄中會多出不少文件、這些文件就是從maven的中央倉庫下載到本地倉庫的。

第三步:建立一個maven項目

在命令提示符中執行:

mvn archetype:generate -DgroupId=com.app -DartifactId=first-app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false

對上面命令解釋一下:

-DgroupId         組織標識(包名)
-DartifactId        項目名稱
-DarchetypeArtifactId    指定ArchetypeId,maven-archetype-quickstart,建立一個Java Project;maven-archetype-webapp,建立一個Web Project
-DinteractiveMode      是否使用交互模式

ps:由於是第一次構建項目,全部依賴的jar包都要從maven的中央倉庫去下載,因此須要等待一段時間。

標準maven項目的結構

└─src
    ├─main
    │  └─java
    │      └─com
    │          └─app
    └─test
        └─java
            └─com
                └─app

src/main/java  存放項目的源代碼
src/test/java  存放測試源代碼
若是要存放一些配置文件,能夠再創建一個目錄src/main/resource存放,如存放log4j.properties等

順便了解下pom.xml文件。
pom.xml包含了項目構建的信息,包括項目的信息、項目的依賴等。
pom.xml文件是能夠繼承的,大型項目中,子模塊的pom.xml通常都會繼承於父模塊的pom.xml

剛建立的項目中pom.xml內容以下:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.app</groupId>
  <artifactId>first-app</artifactId>
  <packaging>jar</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>first-app</name>
  <url>http://maven.apache.org</url>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>
</project>

節點元素說明

<project>      pom文件的頂級節點
<modelVersion>   object model版本,對Maven2和Maven3來講,只能是4.0.0 
<groupId>      項目建立組織的標識符,通常是域名的倒寫
<artifactId>    定義了項目在所屬組織的標識符下的惟一標識,一個組織下能夠有多個項目
<packaging>      打包的方式,有jar、war、ear等
<version>       當前項目的版本,SNAPSHOT,表示是快照版本,在開發中
<name>        項目的名稱
<url>        項目的地址
<dependencies>   構建項目依賴的jar
<description>    項目的描述

Maven參數

-D 傳入屬性參數
-P 使用pom中指定的配置
-e 顯示maven運行出錯的信息
-o 離線執行命令,即不去遠程倉庫更新包
-X 顯示maven容許的debug信息
-U 強制去遠程參考更新snapshot包
例如 mvn install -Dmaven.test.skip=true -Poracle
其餘參數能夠經過mvn help 獲取

Maven經常使用命令

mvn clean # 清理項目生產的臨時文件,通常是模塊下的target目錄
mvn compile # 編譯項目主代碼
mvn test-compile # 編譯測試代碼
mvn package # 項目打包工具,會在模塊下的target目錄生成jar或war等文件
mvn test # 測試命令,或測試src/test/java下junit的測試用例
mvn site-deploy # 生產站點目錄並打包
mvn install # 模塊安裝命令,將打包的jar/war文件複製到你的本地倉庫中,供其餘模塊使用
mvn clean package # 先清除再打包
mvn jar:jar # 打成jar包
-Dmaven.test.skip=true # 跳過測試(同時會跳過test compile)
mvn deploy # 發佈命令,將打包的文件發佈到遠程,提供其餘人員進行下載依賴
mvn eclipse:eclipse # 生成eclipse配置文件,導入到eclipse開放
mvn archetype:generate # 說明以下: 模塊建立命令, 執行命令後,會提示選擇建立項目的模版,這裏選18(maven-archetype-quickstart)

  • 後面會提示你輸入groupId(包存放的路徑):
    eg:com.test
  • 提示輸入artifactId(模塊名稱):
    eg:test-core
  • 提示輸入version(版本):
    1.0.0-SNAPSHOT
  • 提示輸入package(指項目中基本的包路徑):
    eg:com.test
  • 提示確認,回車便可

mvn help:help # 查看幫助信息

建立web項目的命令以下:

mvn archetype:generate -DgroupId=com.app -DartifactId=first-web-app -DarchetypeArtifactId=maven-archetype-webapp -DinteractivMode=false

相關文章
相關標籤/搜索