MVN打包參數詳解


常見的mvn編譯打包方式:

mvn clean -U package -Dtest -DfailIfNoTests=false

mvn clean -U package -Dmaven.test.skip=true

mvn clean -U install -Dtest -DfailIfNoTests=false

mvn clean -U install -Dmaven.test.skip=true

“mvn clean package”和“mvn clean install”的區別:

兩個都有clean命令,都將清除上一次Maven執行的結果。這意味着他們將刪除目標文件夾。Package命令是編譯代碼,並將其打包。例如,如果項目是一個jar文件,那么當打包並將其放置在目標目錄的某個位置(默認情況下)時,它將創建一個jar文件。install會編譯和打包,同時也會把這個包放到你的本地倉庫中。這將使其他項目可以引用它並從本地存儲庫中獲取它。Package & install是Maven創建生命周期中的兩個階段。包裝階段將在此之前執行所有階段並停止將項目打包成jar。同樣,安裝階段將執行所有以前的階段,並最終在本地為其他相關項目安裝項目。

“-DskipTests“和“-Dmaven.test.skip=true“的區別

在使用mvn package進行編譯、打包時,Maven會執行src/test/java中的JUnit測試用例,有時為了跳過測試,會使用參數-DskipTests和-Dmaven.test.skip=true,這兩個參數的主要區別是:

-DskipTests,不執行測試用例,但編譯測試用例類生成相應的class文件至target/test-classes下。

-Dmaven.test.skip=true,不執行測試用例,也不編譯測試用例類。

 

傳送門:http://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html

使用mvn打包比較功能常用

1.package,這個命令會在你的項目路徑下一個target目錄,並且擁有compile命令的功能進行編譯,同時會在target目錄下生成項目的jar/war文件。

2.install,該命令包含了package命令功能,不但會在項目路徑下生成class文件和jar包,同時會在你的本地maven倉庫生成jar文件,供其他項目使用。即將項目輸出構件部署到本地倉庫。

3.clean,執行該命令會刪除項目路徑下的target文件,但是不會刪除本地的maven倉庫已經生成的jar文件。即清除上一次Maven執行的結果。

4.compile,編譯命令,會在你的項目路徑下生成一個target目錄,在該目錄中包含一個classes文件夾,里面全是生成的class文件及字節碼文件。

5. build,這個插件讓你自己去配置執行目標。

6. generate-sources,根據pom配置去生成源代碼格式的包

注:同時執行多次install或者package命令會每次都更新jar文件。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM