Error: package org.junit.jupiter.api does not exist

现场

  • IntelliJ IDEA 2019.2
  • springboot

    org.springframework.boot
    spring-boot-starter-parent
    2.1.9.RELEASE
     


......


    org.springframework.boot
    spring-boot-starter-test
    test

原因

spring boot 2.2 之前使用的是 Junit4 而后续的使用的是Junit5,导致缺少包

  • spring-boot-starter-parent 是一个特殊的 starter,提供相关的 Maven 默认依赖,常用的包依赖可以省去 version 标签,于是spring-boot-starter-test使用了隐式默认版本
  • JUnit4与JUnit5区别
    • JUnit5与JUnit4区别主要是JUnit5使用了大量的jdk8特性、lambda表达式
    • JUnit 5 = JUnit Platform + JUnit Jupiter + JUnit Vintage
  • Migrating from JUnit 4

解决

  • 父工程升级为 spring-boot-starter-parent 2.2.1,如果使用了依赖管理 dependencyManagement,则 spring-boot-starter-test 版本号改为与父工程对应的 2.2.1
  • 直接指定子工程的 spring-boot-starter-test 版本号为与父工程对应的 2.2.1
  • 或其他高于2.2的版本

你可能感兴趣的:(Error: package org.junit.jupiter.api does not exist)