关于java:Maven-打包跳过测试的-5-种方法应有尽有还有谁不会

8次阅读

共计 2159 个字符,预计需要花费 6 分钟才能阅读完成。

平时开发时的工作的话之次要负责写代码就行了,什么公布我的项目啊,好吧不是咱们干的事。在咱们的理解中打包公布我的项目应该不是一个艰难的问题。

对,最简略的办法就行应用间接应用 maven 插件打包,甚至咱们都不须要晓得他是怎么实现的,插件能帮咱们将我的项目打包为一个 jar 包,而后应用 java -jar xx.jar 就能运行咱们的我的项目。

咱们平时应用的在开发中应用的是开发或测试的数据库,和生产下面的个别是隔离的,意味着打包的时候须要激活生产的配置文件,然而咱们不肯定有拜访生产库的权限,此时咱们间接打包就会呈现问题。当咱们间接点击下面的 package 的时候他会激活单元测试,须要测试通过当前能力打包,然而很显然测是不能通过的,因为我激活了生产的配置然而我并没有拜访上产库的权限,此时就会陷入始终打包却打不完的感觉,这就须要咱们打包时跳过测试。那怎么跳过测试呢?

为什么打包时要执行单元测试呢?【这不是咱们的重点,那咱们就简略讲讲,须要深刻理解的自行查阅相干材料。】此时就波及到 Maven 的生命周期,在 Maven 的 default 生命周期中共有 23 个阶段,每个生命周期中的前面的阶段会依赖于后面的阶段,当执行某个阶段的时候,会先执行其后面的阶段。

在 default 生命周期中 package 阶段不是第一个阶段,因而也须要依赖于后面的阶段的执行,正好 test 阶段【测试:应用适合的单元测试框架运行测试(Juint 是其中之一)。】就是其后面阶段之一,此时就会必须先通过 test 阶段才会到 package 阶段【打包:将编译后的代码打包成可散发格局的文件,比方 JAR、WAR…】。

咱们因为没有拜访生产库的权限,此时连 test 阶段都不能通过,那就不会达到 package 这个阶段。那有什么解决办法呢?上面咱们探讨一下此问题的解决办法:

1、命令行形式跳过测试

咱们能够通过应用命令将我的项目打包,增加跳过测试的命令就能够了,能够用两种命令来跳过测试:

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

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

  • 应用 -Dmaven.test.skip=true,岂但跳过单元测试的运行,也跳过测试代码的编译;
  • 应用 -DskipTests=true 跳过单元测试,然而会持续编译。

2、pom.xml 中配置跳过测试

能够在 pom.xml 中增加如下配置来跳过测试:

<build>
    <plugins>
        <!-- maven 打包时跳过测试 -->
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <configuration>
                <skip>true</skip>
            </configuration>
        </plugin>
    </plugins>
</build>

举荐一个开源收费的 Spring Boot 最全教程:

https://github.com/javastacks/spring-boot-best-practice

3、间接配置

Maven 命令栏的工具栏有下图中的图标,这个图标就是 Skip Tests。点击选中,再用 LifeStyle 中的打包就会跳过测试。

注:因为我的 IDEA 是 2022 的版本,图标可能和以前的版本有些许区别,以前的版本应该是一个蓝色的圆圈外面带一个闪电。

4、增加 Maven 配置参数

关上配置,找到 Build,Exxcution,Deployment –> Maven Tools –> Maven –> Runner,在 VM option 中增加 -Dmaven.test.skip=true 或者 -DskipTests=true,就能在打包是跳过测试。

5、通过更改设置

关上配置,找到 Build,Exxcution,Deployment –> Maven Tools –> Maven –> Runner,在 Properties 中勾选 Skip Test 选项。

以上就是我查阅材料之后找到是几种打包跳过测试的形式。

版权申明:本文为 CSDN 博主「平地上的七云」的原创文章,遵循 CC 4.0 BY-SA 版权协定,转载请附上原文出处链接及本申明。原文链接:https://blog.csdn.net/swerfse/article/details/127414040

近期热文举荐:

1.1,000+ 道 Java 面试题及答案整顿(2022 最新版)

2. 劲爆!Java 协程要来了。。。

3.Spring Boot 2.x 教程,太全了!

4. 别再写满屏的爆爆爆炸类了,试试装璜器模式,这才是优雅的形式!!

5.《Java 开发手册(嵩山版)》最新公布,速速下载!

感觉不错,别忘了顺手点赞 + 转发哦!

正文完
 0