Maven筆記(一)

一.Maven是什麼

Maven是項目管理工具
優點 : 1. 方便jar管理
2. 不需要上傳jar包
3. 跨平臺管理

二.安裝網上教程很多 , 筆記只記錄大體步驟
  1. 官方下載
  2. 解壓後 , 設置環境變量 , 運行目錄在bin下
  3. 修改倉庫地址 , 在bin目錄下config文件內settings.xml中修改 , 這個標籤內地址爲倉庫地址 , 倉庫是用來放jar包的地方 , 可以自己確定放jar包的地址 .
  4. 網上推薦是在,settings.xml文件中修改 , 下載jar包的服務器 , 默認是官方的 , 因爲官方服務器是國外的 , 在國內下載就有點慢 , 可以不修改不影響.
三. 我用idea自帶Maven插件 , 如果用eclipse可能要自己去安裝 , 這個插件 , 安裝方法百度
四. 瞭解Maven項目結構

pom文件是判斷Maven的核心 , 有pom的一定是一個maven工程 , src目錄 , 和 target目錄可能沒有.

下面是一個標準的Maven普通工程 , web工程會在 resources 下方的位置上多出個webapp , webapp與 java , resources是同級目錄.

ProjectName
  |-src
  |   |-main
  |   |  |-java        —— 存放項目的.java文件
  |   |  |-resources   —— 存放項目資源文件,如spring, hibernate配置文件
  |   |-test
  |      |-java        ——存放所有測試.java文件,如JUnit測試類
  |      |-resources   —— 測試資源文件
  |-target             —— 目標文件輸出位置例如.class、.jar、.war文件 , 實際上就是編譯後的文件
  |-pom.xml           ——maven項目核心配置文件
五. 基礎命令

compile : 將項目重新編譯一遍 , target 存放編譯後的文件
clean : 將編譯好的文件清除 , target被刪除了
test : 單元測試操作 , 執行完畢後,會在target目錄中生成三個文件夾:surefire、surefire-reports(測試報告)、test-classes(測試的字節碼文件)
package :執行完畢後,會在target目錄中生成一個文件,該文件可能是jar、war
install : 將打好的jar包安裝到本地倉庫的操作 先了解

六. GAV座標

GAV座標是在pom文件中導入依賴(jar包)時候用到的 , 下面是GAV的模板

groupId:定義當前Maven組織名稱
artifactId:定義實際項目名稱
version:定義當前項目的當前版本

GAV根據使用的jar包去http://www.mvnrepository.com或者http://search.maven.org/網站查找 , 然後複製粘貼在 , pom文件的依賴裏

七. 依賴的概念

依賴就是指 , 在寫代碼時候用到的jar包 , 在一個項目中 , 多人開發時候如果每個人都用自己的jar包 , 會出現重複 , 不兼容 , 等問題 , 用Maven可以統一使用的jar包
依賴的導入就是通過上面說的GAV座標實現的自動導入 , 只要在maven中導入GAV座標 , 那麼Maven會自動下載
依賴還有 , 依賴傳遞 , 依賴排除 , 依賴衝突 , 等問題

八. 生命週期

Maven中有三套互相獨立的生命週期 , Clean Lifecycle , Default Lifecycle , Site Lifecycle ,個人理解的不多 可以自行查找 , 有一個個原則 , 運行任何一個階段的時候,它前面的所有階段都會被運行 , 例如運行 package 會將前面的 compile和test命令按順序依次運行. 這裏舉例 , 只是其中的一部分

寫的很粗糙 , 都是很多都是一個梗概 , 對Maven有個大體的瞭解 .

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