Maven常用命令詳解


Apache Maven是一個軟件項目管理和理解工具。基於項目對象模型(POM)的概念,Maven可以從一個中心信息管理項目的構建,報告和文檔。

Maven優點

  • 約定優於配置
  • 測試支持
  • 構建簡單
  • 插件豐富

Maven常用命令:

  1. 創建Maven的普通Java項目:
  mvn archetype:create
  -DgroupId=packageName
  -DartifactId=projectName 
  1. 創建Maven的Web項目:
  mvn archetype:create
  -DgroupId=packageName   
  -DartifactId=webappName
  -DarchetypeArtifactId=maven-archetype-webapp  
  1. 編譯源代碼: mvn compile
  2. 編譯測試代碼:mvn test-compile
  3. 運行測試:mvn test
  4. 產生site:mvn site
  5. 打包:mvn package
  6. 在本地Repository中安裝jar:mvn install
  7. 清除產生的項目:mvn clean
  8. 生成eclipse項目:mvn eclipse:eclipse
  9. 生成idea項目:mvn idea:idea
  10. 組合使用goal命令,如只打包不測試:mvn -Dtest package
  11. 編譯測試的內容:mvn test-compile
  12. 只打jar包: mvn jar:jar
  13. 只測試而不編譯,也不測試編譯:mvn test -skipping compile -skipping test-compile
    ( -skipping 的靈活運用,當然也可以用於其他組合命令)
  14. 清除eclipse的一些系統設置:mvn eclipse:clean

ps:
一般使用情況是這樣,首先通過cvs或svn下載代碼到本機,然后執行mvn eclipse:eclipse生成ecllipse項目文件,然后導入到eclipse就行了;修改代碼后執行mvn compilemvn 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 插件構造數據庫


免責聲明!

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



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