一、Maven常用命令及其作用
Maven的生命周期包括:clean、validate、compile、test、package、verify、install、site、deploy,其中需要注意的是:執行后面的命令時,前面的命令自動得到執行,(其中,也可以跳過其中的步驟,如:test,在mvn install或mvn package后加上-Dmaven.test.skip=true或-DskipTests即可),
生命周期 描述
1.clean 清理洗掉target目錄下編譯的內容,遇到問題多清理
2.validate 驗證,驗證專案是否正確,
3.compile 編譯專案源代碼,執行編譯,源代碼編譯在此階段完成,
4.test 對專案進行運行測驗,使用適當的單元測驗框架(例如JUnit)運行測驗,
5.package 打包,打成jar或war包,其中會自動進行clean+compile,
6.verify 檢查,對集成測驗的結果進行檢查,以保證質量達標,
7.install 安裝,將本地工程jar包上傳安裝到本地倉庫,以供其他專案使用,
8.site 站點,進行站點部署,
9.deploy 部署,拷貝最終的工程包到遠程倉庫或私服中,以共享給其他開發人員和工程,
二、常用命令使用場景舉例
1、mvn clean package依次執行了clean、resources、compile、testResources、testCompile、test、jar(打包)等7個階段
package命令完成了專案編譯、單元測驗、打包功能,但沒有把打好的可執行jar包(war包或其它形式的包)布署到本地maven倉庫和遠程maven私服倉庫
2、mvn clean install依次執行了clean、resources、compile、testResources、testCompile、test、jar(打包)、install等8個階段
install命令完成了專案編譯、單元測驗、打包功能,同時把打好的可執行jar包(war包或其它形式的包)布署到本地maven倉庫,但沒有布署到遠程maven私服倉庫
3、mvn clean deploy依次執行了clean、resources、compile、testResources、testCompile、test、jar(打包)、install、deploy等9個階段
deploy命令完成了專案編譯、單元測驗、打包功能,同時把打好的可執行jar包(war包或其它形式的包)布署到本地maven倉庫和遠程maven私服倉庫
三、常見問題
(一)mvn clean install 和 mvn install 的區別
1、根據maven在執行一個生命周期命令時,理論上講,不做mvn install 得到的jar包應該是最新的,除非使用其他方式修改jar包的內容,但沒有修改源代碼
2、平時可以使用mvn install ,不使用clean會節省時間,但是最保險的方式還是mvn clean install,這樣可以生成最新的jar包或者其他包
(二)maven兩種跳過單元測驗方法的區別
1、 mvn package -Dmaven.test.skip=true
不但跳過了單元測驗的運行,同時也跳過了測驗代碼的編譯
2、 mvn package -DskipTests
跳過單元測驗,但是會繼續編譯,如果沒時間修改單元測驗的bug,或者單元測驗編譯錯誤,則使用第一種,不要使用第二種
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/554892.html
標籤:其他
下一篇:返回列表
