maven入門基礎

  • maven介紹

maven是構建工具,也是構建管理工具。ant只是構建工具,因爲不支持生成站點功能,只有預處理,編譯,打包,測試,部署等功能。

  • maven座標

groupId:項目組織的逆向域名,比如Apache的項目可以org.apache開頭

artfactId:表示groupId下單個項目的唯一標識

version:發佈項目的版本,版本標識加上SNAPSHOT標記

packing:項目打包後的輸出,默認爲jar。指爲war項目打包生成一個web項目。

groupId,artfactId,version標識項目的唯一性,packing可以缺省

  • maven生命週期

介紹mvn package的生命週期,運行此命令的時候,有下圖的幾個階段(左側爲階段,右側爲階段)


resources:resources:Resources插件把resources目標綁定到resources階段,還有就是src/main/resources下的資源和配置輸出到目標目錄

compiler:compile:Compiler插件把complie目標綁定到compile階段,還有就是把src/main/java下的源代碼和配置文件輸出到目標目錄

resources:testRescources:Resources插件把tetsResources目標綁定到resources階段,把src/test/resources下的資源和配置輸出到目標目錄

compiler:testCompile:Cpmpiler把compiler目標綁定到compile階段,把src/test/java下的源代碼和配置文件輸出到目標

surefire:test:Surefire插件把test目標綁定到test階段

jar:jar:Jar插件把jar目標綁定到package階段,打包輸出jar文件

  • maven倉庫

默認倉庫:http://repo1.maven.org/maven2/ 

本地倉庫地址:C:\Users\baobao\.m2\repository

第一運行maven的時候,會從默認倉庫下載很多默認的插件。構建項目的插件默認都是遠程下載的。

默認倉庫的地址,可以修改 。可以指向自己的服務器(用Apache Archiva搭建 maven 倉庫服務器)。

  • maven依賴關係

maven依賴的不僅僅是一個jar文件,還有一個pom文件。這個pom文件聲明瞭jar對其他的jar的依賴。這種依賴稱之爲傳遞性依賴 。

<dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
</dependency>

scope爲test的時候,說明依賴範圍是test,只有運行compile:testCompile和surefire:test目標的時候纔會使用。其它的範圍類似。

scope爲provided的時候,依賴只是在編譯的時候。

  • maven生成站點

運行mvn site命令,會在target/site目錄下面看到一個web站點,運行index.html可以看到項目的一些基本信息,比如開發者

發佈了55 篇原創文章 · 獲贊 17 · 訪問量 16萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章