Maven 打包时跳过单元测试和引入本地jar包

Maven 打包时跳过单元测试和引入本地jar包

一、Maven 跳过单元测试

在使用 mvn package 进行编译、打包时,Maven会执行 src/test/java 中的 JUnit 测试用例,有时为了跳过测试,会使用参数 -DskipTests 和 -Dmaven.test.skip=true,这两个参数的主要区别是:

  • -DskipTests,不执行测试用例,但编译测试用例类生成相应的class文件至target/test-classes下。
  • -Dmaven.test.skip=true,不执行测试用例,也不编译测试用例类。

同样,install 在本地Repository中安装jar时,也可以跳过测试用例:

mvn install -Dmaven.test.skip=true

二、Maven 引入本地 jar 包依赖

当maven依赖本地而非repository中的jar包,systemPath指明本地jar包路径。

<dependency>

<groupId>org.hamcrest</groupId>

<artifactId>hamcrest-core</artifactId>

<version>1.3</version>

<scope>system</scope>

<systemPath>${project.basedir}/lib/hamcrest-core-1.3.jar</systemPath>

</dependency>

三、将jar包安装到本地repository中

mvn install:install-file -Dfile=my-jar.jar -DgroupId=org.rickie -DartifactId=my-jar -Dversion=1.0 -Dpackaging=jar