大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 hot資訊 Maven命令和選項

Maven命令和選項

更新時間:2021-10-13 10:55:31 來源:動力節點 瀏覽995次

如果您正在使用 Java,那么您必須了解 Maven。Maven 是最流行的 Java 應用程序項目和依賴項管理工具。Maven 提供了許多命令和選項來幫助我們完成日常任務。

Maven 命令

讓我們來看看一些流行的并且必須知道的maven命令。我們將使用一個示例 Maven 項目來展示命令輸出。

1.mvn 清潔

此命令通過刪除目標目錄來清理 Maven 項目。命令輸出相關消息如下所示。

$ mvn clean
...
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ maven-example-jar ---
[INFO] Deleting /Users/pankaj/Desktop/maven-examples/maven-example-jar/target
...
$

2.mvn 編譯器:編譯

該命令編譯maven項目的java源類。

$ mvn compiler:compile
...
[INFO] --- maven-compiler-plugin:3.8.1:compile (default-cli) @ maven-example-jar ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 1 source file to /Users/pankaj/Desktop/maven-examples/maven-example-jar/target/classes
...
$

3.mvn 編譯器:testCompile

此命令編譯 maven 項目的測試類。

$ mvn compiler:testCompile
...
[INFO] --- maven-compiler-plugin:3.8.1:testCompile (default-cli) @ maven-example-jar ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 1 source file to /Users/pankaj/Desktop/maven-examples/maven-example-jar/target/test-classes
...
$

4.mvn包

此命令構建 maven 項目并將它們打包成 JAR、WAR 等。

$ mvn package
...
[INFO] --- maven-compiler-plugin:3.8.1:compile (default-compile) @ maven-example-jar ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 1 source file to /Users/pankaj/Desktop/maven-examples/maven-example-jar/target/classes
...
[INFO] --- maven-compiler-plugin:3.8.1:testCompile (default-testCompile) @ maven-example-jar ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 1 source file to /Users/pankaj/Desktop/maven-examples/maven-example-jar/target/test-classes
[INFO] 
[INFO] --- maven-surefire-plugin:2.12.4:test (default-test) @ maven-example-jar ---
[INFO] Surefire report directory: /Users/pankaj/Desktop/maven-examples/maven-example-jar/target/surefire-reports
-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Running com.journaldev.maven.classes.AppTest
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.005 sec
Results :
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0
[INFO] 
[INFO] --- maven-jar-plugin:2.4:jar (default-jar) @ maven-example-jar ---
[INFO] Building jar: /Users/pankaj/Desktop/maven-examples/maven-example-jar/target/maven-example-jar-0.0.1-SNAPSHOT.jar
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
...

輸出在“BUILD SUCCESS”消息之前顯示 JAR 文件的位置。請注意,包目標在打包構建之前執行 compile、testCompile 和 test 目標。

5.mvn 安裝

此命令構建 maven 項目并將項目文件(JAR、WAR、pom.xml 等)安裝到本地存儲庫。

$ mvn install
...
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ maven-example-jar ---
...
[INFO] --- maven-compiler-plugin:3.8.1:compile (default-compile) @ maven-example-jar ---
...
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ maven-example-jar ---
...
[INFO] --- maven-compiler-plugin:3.8.1:testCompile (default-testCompile) @ maven-example-jar ---
...
[INFO] --- maven-surefire-plugin:2.12.4:test (default-test) @ maven-example-jar ---
...
[INFO] --- maven-jar-plugin:2.4:jar (default-jar) @ maven-example-jar ---
...
[INFO] --- maven-install-plugin:2.4:install (default-install) @ maven-example-jar ---
[INFO] Installing /Users/pankaj/Desktop/maven-examples/maven-example-jar/target/maven-example-jar-0.0.1-SNAPSHOT.jar to /Users/pankaj/.m2/repository/com/journaldev/maven/maven-example-jar/0.0.1-SNAPSHOT/maven-example-jar-0.0.1-SNAPSHOT.jar
[INFO] Installing /Users/pankaj/Desktop/maven-examples/maven-example-jar/pom.xml to /Users/pankaj/.m2/repository/com/journaldev/maven/maven-example-jar/0.0.1-SNAPSHOT/maven-example-jar-0.0.1-SNAPSHOT.pom
...

6.mvn 部署

此命令用于將工件部署到遠程存儲庫。遠程存儲庫應該在項目 pom.xml 文件 distributionManagement 標簽中正確配置。maven settings.xml 文件中的服務器條目用于提供身份驗證詳細信息。

7.mvn 驗證

此命令驗證 Maven 項目是否一切正常且所有必要的信息都可用。

8.mvn 依賴:樹

該命令生成maven項目的依賴樹。

$ mvn dependency:tree
...
[INFO] --- maven-dependency-plugin:2.8:tree (default-cli) @ Mockito-Examples ---
[INFO] com.journaldev.mockito:Mockito-Examples:jar:1.0-SNAPSHOT
[INFO] +- org.junit.platform:junit-platform-runner:jar:1.2.0:test
[INFO] |  +- org.apiguardian:apiguardian-api:jar:1.0.0:test
[INFO] |  +- org.junit.platform:junit-platform-launcher:jar:1.2.0:test
[INFO] |  \- org.junit.platform:junit-platform-suite-api:jar:1.2.0:test
[INFO] |     \- org.junit.platform:junit-platform-commons:jar:1.2.0:test
[INFO] +- org.junit.jupiter:junit-jupiter-engine:jar:5.2.0:test
[INFO] |  +- org.junit.platform:junit-platform-engine:jar:1.2.0:test
[INFO] |  |  \- org.opentest4j:opentest4j:jar:1.1.0:test
[INFO] |  \- org.junit.jupiter:junit-jupiter-api:jar:5.2.0:test
[INFO] +- org.mockito:mockito-junit-jupiter:jar:2.19.0:test
[INFO] |  \- org.mockito:mockito-core:jar:2.19.0:test
[INFO] |     +- net.bytebuddy:byte-buddy:jar:1.8.10:test
[INFO] |     +- net.bytebuddy:byte-buddy-agent:jar:1.8.10:test
[INFO] |     \- org.objenesis:objenesis:jar:2.6:test
[INFO] \- org.testng:testng:jar:6.14.3:test
[INFO]    +- com.beust:jcommander:jar:1.72:test
[INFO]    \- org.apache-extras.beanshell:bsh:jar:2.0b6:test

9.mvn 依賴:分析

此命令分析 maven 項目以識別未使用的已聲明和已使用的未聲明依賴項。通過識別未使用的依賴項,然后將其從 pom.xml 文件中刪除,這有助于減少構建大小。

$ mvn dependency:analyze
...
[INFO] --- maven-dependency-plugin:2.8:analyze (default-cli) @ Mockito-Examples ---
[WARNING] Used undeclared dependencies found:
[WARNING]    org.junit.jupiter:junit-jupiter-api:jar:5.2.0:test
[WARNING]    org.mockito:mockito-core:jar:2.19.0:test
[WARNING] Unused declared dependencies found:
[WARNING]    org.junit.platform:junit-platform-runner:jar:1.2.0:test
[WARNING]    org.junit.jupiter:junit-jupiter-engine:jar:5.2.0:test
[WARNING]    org.mockito:mockito-junit-jupiter:jar:2.19.0:test
...
$

10.mvn 原型:生成

Maven archetypes 是一個 Maven 項目模板工具包。我們可以使用這個命令來生成不同類型的maven項目骨架,比如JAR、web應用、maven站點等。

11.mvn 站點:站點

此命令為項目生成站點。執行此命令后,您會注意到目標中有一個“站點”目錄。站點目錄中將有多個 HTML 文件,提供與項目相關的信息。

12.mvn測試

此命令用于運行項目的測試用例,使用maven-surefire-plugin.

$ mvn test
...
[INFO] --- maven-surefire-plugin:2.22.0:test (default-test) @ Mockito-Examples ---
[INFO] 
[INFO] -------------------------------------------------------
[INFO]  T E S T S
[INFO] -------------------------------------------------------
[INFO] Running TestSuite
first-element
second-element
Employee setName Argument = Pankaj
...
[INFO] Results:
[INFO] 
[INFO] Tests run: 5, Failures: 0, Errors: 0, Skipped: 0
...
$

13.mvn 編譯

它用于編譯項目的源 Java 類。

$ mvn compile
...
[INFO] --- maven-compiler-plugin:3.7.0:compile (default-compile) @ Mockito-Examples ---
[INFO] Changes detected - recompiling the module!
[WARNING] File encoding has not been set, using platform encoding UTF-8, i.e. build is platform dependent!
[INFO] Compiling 10 source files to /Users/pankaj/Desktop/maven-examples/Mockito-Examples/target/classes
...
$

14.mvn 驗證

此命令構建項目,運行所有測試用例并對集成測試的結果運行任何檢查以確保滿足質量標準。

Maven 選項

Maven 提供了許多命令行選項來改變 Maven 構建過程。讓我們看看一些重要的 maven 選項。

15.mvn -幫助

此命令打印 maven 用法和所有可用選項供我們使用。

16.mvn -f maven-example-jar/pom.xml 包

此命令用于從不同位置構建項目。我們提供了 pom.xml 文件位置來構建項目。當您必須從腳本運行 Maven 構建時,它很有用。

17.mvn -o 包

該命令用于在離線模式下運行 Maven 構建。當我們在本地存儲庫中下載了所有必需的 JAR 并且我們不希望 Maven 在遠程存儲庫中查找任何 JAR 時,這很有用。

18.mvn -q 包

以安靜模式運行maven build,只顯示測試用例結果和錯誤。

$ mvn -q package         
-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Running com.journaldev.maven.classes.AppTest
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.006 sec
Results :
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0
$

19.mvn -X 包

打印 maven 版本并在調試模式下運行構建。它與安靜模式相反,您會在控制臺中看到很多調試消息。

20.mvn -v

用于顯示maven版本信息。

$ mvn -v
Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
Maven home: /Users/pankaj/Downloads/apache-maven-3.6.3
Java version: 13.0.1, vendor: Oracle Corporation, runtime: /Library/Java/JavaVirtualMachines/jdk-13.0.1.jdk/Contents/Home
Default locale: en_IN, platform encoding: UTF-8
OS name: "mac os x", version: "10.15.1", arch: "x86_64", family: "mac"
$

21.mvn -V 包

此命令打印 Maven 版本,然后繼續構建。它相當于命令mvn -v;mvn package。

22.mvn -DskipTests 包

該skipTests系統屬性用于跳過從構建循環單元測試用例。我們還可以使用-Dmaven.test.skip=true跳過測試用例執行。

23.mvn -T 4 包

此命令告訴 maven 使用指定的線程數運行并行構建。它在可以并行構建模塊的多個模塊項目中很有用。它可以減少項目的構建時間。

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 久久婷婷一区二区三区 | 精品一区二区在线观看 | 欧美成人在线免费观看 | 亚洲精品国产手机 | 日本边添边爱边做视频 | 亚洲国产精品一区二区首页 | 精品欧美一区二区三区四区 | 黄片毛片一级片 | 97色在线播放 | 欧美成人久久久 | 久久福利在线 | 色爱区综合激月婷婷激情五月 | 四虎精品成在线播放 | 欧美一级片网 | 久久精品免看国产成 | 久久久久久久久久免观看 | 久久99精品一区二区三区 | 一道本一区二区三区 | 日韩欧美亚洲在线 | 狠狠色伊人亚洲综合第8页 狠狠色综合久久丁香婷婷 狠狠色综合久久婷婷 | 手机在线看片福利 | 成年女人在线观看片免费视频 | 天天舔天天射天天干 | 亚洲成a v人片在线观看 | 国产精品免费入口视频 | 囗交免费毛片 | 毛片视频网站在线观看 | 高清一区二区三区免费 | 日日干夜夜草 | 99国产精品热久久久久久 | 中文字幕一区二区三区精彩视频 | 伊人天天干 | 综合88| 久久久在线视频 | 国产真实伦视频在线视频 | 成人久久久久久 | 四虎免费在线播放 | 亚洲国产欧美日韩一区二区 | 日日夜夜免费精品 | 国产成人99精品免费观看 | 亚洲国产99999在线精品一区 |