2021-05-12 14:32:11
Maven常用命令詳解
Apache Maven是一個軟體專案管理和理解工具。基於專案物件模型(POM)的概念,Maven可以從一個中心資訊管理專案的構建,報告和文件。
Maven優點:
- 約定優於設定
- 測試支援
- 構建簡單
- 外掛豐富
Maven常用命令:
1. 建立Maven的普通Java專案:
mvn archetype:create
-DgroupId=packageName
-DartifactId=projectName
2. 建立Maven的Web專案:
mvn archetype:create
-DgroupId=packageName
-DartifactId=webappName
-DarchetypeArtifactId=maven-archetype-webapp
3. 編譯原始碼: mvn compile
4. 編譯測試程式碼:mvn test-compile
5. 執行測試:mvn test
6. 產生site:mvn site
7. 打包:mvn package
8. 在本地Repository中安裝jar:mvn install
9. 清除產生的專案:mvn clean
10. 生成eclipse專案:mvn eclipse:eclipse
11. 生成idea專案:mvn idea:idea
12. 組合使用goal命令,如只打包不測試:mvn -Dtest package
13. 編譯測試的內容:mvn test-compile
14. 只打jar包: mvn jar:jar
15. 只測試而不編譯,也不測試編譯:mvn test -skipping compile -skipping test-compile
( -skipping 的靈活運用,當然也可以用於其他組合命令)
16. 清除eclipse的一些系統設定:mvn eclipse:clean
ps:
一般使用情況是這樣,首先通過cvs或svn下載程式碼到本機,然後執行mvn eclipse:eclipse生成ecllipse專案檔案,然後匯入到eclipse就行了;修改程式碼後執行mvn compile或mvn test檢驗,也可以下載eclipse的maven外掛。
mvn -version/-v 顯示版本資訊
mvn archetype:generate 建立mvn專案
mvn archetype:create -DgroupId=com.oreilly -DartifactId=my-app 建立mvn專案
mvn package 生成target目錄,編譯、測試程式碼,生成測試報告,生成jar/war檔案
mvn jetty:run 執行專案於jetty上,
mvn compile 編譯
mvn test 編譯並測試
mvn clean 清空生成的檔案
mvn site 生成專案相關資訊的網站
mvn -Dwtpversion=1.0 eclipse:eclipse 生成Wtp外掛的Web專案
mvn -Dwtpversion=1.0 eclipse:clean 清除Eclipse專案的設定資訊(Web專案)
mvn -DskipTests,不執行測試用例,但編譯測試用例類生成相應的class檔案至target/test-classes下。
mvn -Dmaven.test.skip=true,不執行測試用例,也不編譯測試用例類。
mvn eclipse:eclipse 將專案轉化為Eclipse專案
在應用程式用使用多個儲存庫
<repositories>
<repository>
<id>Ibiblio</id>
<name>Ibiblio</name>
<url>http://www.ibiblio.org/maven/</url>
</repository>
<repository>
<id>PlanetMirror</id>
<name>Planet Mirror</name>
<url>http://public.planetmirror.com/pub/maven/</url>
</repository>
</repositories>
mvn deploy:deploy-file -DgroupId=com -DartifactId=client -Dversion=0.1.0 -Dpackaging=jar -Dfile=d:client-0.1.0.jar -DrepositoryId=maven-repository-inner -Durl=ftp://xxxxxxx/opt/maven/repository/
發布第三方Jar到本地庫中:
mvn install:install-file -DgroupId=com -DartifactId=client -Dversion=0.1.0 -Dpackaging=jar -Dfile=d:client-0.1.0.jar
-DdownloadSources=true
-DdownloadJavadocs=true
mvn -e 顯示詳細錯誤 資訊.
mvn -U 強制更新依賴包
mvn -B 該參數列示讓Maven使用批次處理模式構建專案
mvn validate 驗證工程是否正確,所有需要的資源是否可用。
mvn test-compile 編譯專案測試程式碼。 。
mvn integration-test 在整合測試可以執行的環境中處理和發布包。
mvn verify 執行任何檢查,驗證包是否有效且達到品質標準。
mvn generate-sources 產生應用需要的任何額外的原始碼,如xdoclet。
常用命令總結:
mvn -v 顯示版本
mvn help:describe -Dplugin=help 使用 help 外掛的 describe 目標來輸出 Maven Help 外掛的資訊。
mvn help:describe -Dplugin=help -Dfull 使用Help 外掛輸出完整的帶有引數的目標列
mvn help:describe -Dplugin=compiler -Dmojo=compile -Dfull 獲取單個目標的資訊,設定 mojo 引數和 plugin 引數。此命令列出了Compiler 外掛的compile 目標的所有資訊
mvn help:describe -Dplugin=exec -Dfull 列出所有 Maven Exec 外掛可用的目標
mvn help:effective-pom 看這個“有效的 (effective)”POM,它暴露了 Maven的預設設定
mvn archetype:create -DgroupId=org.sonatype.mavenbook.ch03 -DartifactId=simple -DpackageName=org.sonatype.mavenbook 建立Maven的普通java專案,在命令列使用Maven Archetype 外掛
mvn exec:java -Dexec.mainClass=org.sonatype.mavenbook.weather.Main Exec 外掛讓我們能夠在不往 classpath 載入適當的依賴的情況下,執行這個程式
mvn dependency:resolve 列印出已解決依賴的列表
mvn dependency:tree 列印整個依賴樹
mvn install -X 想要檢視完整的依賴蹤跡,包含那些因為衝突或者其它原因而被拒絕引入的構件,開啟 Maven 的偵錯標記執行
mvn install -Dmaven.test.skip=true 給任何目標新增maven.test.skip 屬性就能跳過測試
mvn install assembly:assembly 構建裝配Maven Assembly 外掛是一個用來建立你應用程式特有分發包的外掛
mvn jetty:run 呼叫 Jetty 外掛的 Run 目標在 Jetty Servlet 容器中啟動 web 應用
mvn compile 編譯你的專案
mvn clean install 刪除再編譯
mvn hibernate3:hbm2ddl 使用 Hibernate3 外掛構造資料庫
Maven庫:http://repo2.maven.org/maven2/
Maven依賴查詢:http://mvnrepository.com/
相關文章