-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的对应参数。