[Maven] 經常使用命令

簡單介紹maven中的經常使用命令html

maven的生命週期共9步:

clean =>validate =>
compile =>test =>
package =>verify =>
install =>site =>
deployapache

新建Maven項目:

mvn -B archetype:generate \
  -DarchetypeGroupId=org.apache.maven.archetypes \
  -DgroupId=com.mycompany.app \
  -DartifactId=my-app

獲得以下pom.xml:app

<project xmlns="http://maven.apache.org/POM/4.0.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
                      http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.mycompany.app</groupId>
  <artifactId>my-app</artifactId>
  <packaging>jar</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>Maven Quick Start Archetype</name>
  <url>http://maven.apache.org</url>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.11</version>
      <scope>test</scope>
    </dependency>
  </dependencies>
</project>
  • groupId 定義該項目所屬的公司、項目組
  • artifactId 定義具體該項目名
  • packaging 打包方式分爲 jar,pom ,warmaven

    1. jar war 若是是須要部署的項目,則須要打包成war類型,若是隻是內部調用或者是做服務使用,則推薦打包成jar類型。
    2. pom POM是最簡單的打包類型,也不執行任何代碼,只是爲了聚合工程或傳遞依賴用的。

remove 本地已編譯文件

mvn clean

編譯應用源碼

mvn compile
  • maven首先下載相關插件與相關依賴(當再次執行則不須要)
  • 編譯,(把生成的相關文件放在${basedir}/target/classes目錄下)

測試

mvn test
  • 首先下載相關插件,包括測試所需的工具
  • 編譯
  • 測試

打包

mvn package

確保packagingjar,執行了下列工做:工具

  • mvn test + 打爲可執行的jar包

安裝在本地庫

mvn install
  • mvn package + 部署在本地庫

部署在遠程庫

mvn deploy
  • mvn install + 部署於遠程倉庫

其餘命令

\\  檢查工程,檢查全部須要的dep是否可用。 
mvn validate
\\ 檢查打好的包,檢查包是否有效且達到標準。
mvn verify
\\生成maven install的html報告
mvn site
\\ 版本
mvn -v
\\ 打印依賴樹: 
mvn dependency:tree

組合命令

例如 只打包不測試:測試

mvn -Dtest package

或者,僅編譯測試相關代碼,並不運行 ,運行下列命令:ui

mvn test-compile
相關文章
相關標籤/搜索