1、maven命令
跳过测试阶段:
mvn package -DskipTests
临时性跳过测试代码的测试、编译:
mvn package -Dmaven.test.skip=true
maven.test.skip同时控制maven-compiler-plugin和maven-surefire-plugin两个插件的行为,即跳过编译,又跳过测试。
指定测试类
mvn test -Dtest=RandomGeneratorTest
以Random开头,Test结尾的测试类
mvn test -Dtest=Random*Test
用逗号分隔指定多个测试用例
mvn test -Dtest=ATest,BTest
指定即使没有任何测试用例也不要报错 test参数必须匹配至少一个测试类,否则会报错并导致构建失败。此时可使用以下配置来指定即使没有任何测试用例也不要报错。
mvn test -Dtest -DfailIfNoTests = false
2、maven配置
2.1、跳过测试类
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.19.1</version>
<configuration>
<skipTests>true</skipTests>
<!-- skip 对应命令行参数为 maven.test.skip -->
<skip>false</skip>
</configuration>
</plugin>
2.2、包含指定测试类
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.19.1</version>
<configuration>
<includes>
<include>**/*Tests.java</include>
</includes>
</configuration>
</plugin>
2.3、排除指定测试类
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.19.1</version>
<configuration>
<excludes>
<exclude>**/*ServiceTest.java</exclude>
</excludes>
</configuration>
</plugin>
2.4、一起打包测试类,供依赖方使用
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.4</version>
<executions>
<execution>
<goals>
<goal>test-jar</goal>
</goals>
</execution>
</executions>
</plugin>
2.5、打包时将jdk中的jar加进来
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
<optimize>true</optimize>
<debug>true</debug>
<showDeprecation>true</showDeprecation>
<showWarnings>false</showWarnings>
<compilerArguments>
<verbose />
<bootclasspath>${java.home}/lib/rt.jar;${java.home}/lib/jce.jar</bootclasspath>
</compilerArguments>
</configuration>
</plugin>
2.6、打包时将本地环境中指定的文件夹下的所有jar加进来
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.3</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
<compilerArguments>
<extdirs>${env.JAVA_HOME}/jre/lib</extdirs>
</compilerArguments>
</configuration>
</plugin>
2.7、打包时将项目路径中指定的文件夹下的所有jar加进来
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.3</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
<compilerArguments>
<extdirs>${basedir}/src/main/webapp/WEB-INF/lib</extdirs>
</compilerArguments>
</configuration>
</plugin>
2.8、打包时配置
<build>
<!--打包时将resources文件夹下的所有文件打包进来-->
<resources>
<resource>
<directory>src/main/resources</directory>
<includes>
<!--包含文件夹以及子文件夹下所有资源-->
<include>**/*.*</include>
</includes>
</resource>
</resources>
<!--打包时找到主运行类-->
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<mainClass>com.fengdis.MainApplication</mainClass>
</configuration>
</plugin>
</plugins>
</build>
注:
-
和 两个标签,如果配置多个数据,mac、linux用冒号(:)分隔,而windows用分号(;)分隔。 -
和 两个标签,mac、linux用/,windows路径用\。