-D
-DskipTests=true和-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:即不執行測試用例,也不編譯測試用例類。
-Dmaven.javadoc.skip
-Dmaven.javadoc.skip=true 讓maven跳過生成javadoc過程
-P
-Pxx,xx 表示在<profiles>中一組<profile>中,具體使用哪個<profile>。xx與<profile>的子標簽<id>的內容對應。
// pom.xml
<profiles>
<profile>
<id>dev</id>
<properties>
<env>dev</env>
</properties>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
</profile>
<profile>
<id>production</id>
<properties>
<env>production</env>
</properties>
</profile>
</profiles>
mvn -Pdev
表示maven進行package時使用pom.xml中的profile的id為dev的對應參數。