SpringBootTest无法启动:java.lang.IllegalStateException Unable to find a @SpringBootConfiguration, you need to use

1、出现的原因

  • 个人代码如下所示

  • 无法启动的原因是因为,当前测试类@SpringBootTest注解会在启动的时候寻找当前项目的启动类

    • 当@SpringBootTest注解没有赋值的时候,会去寻找同一个包或者子包下寻找启动类
  • 然后显而易见,当前测试类跟启动类并没有在同一个包或子包下

2、解决办法

解决办法1:@SpringBootTest的classes属性赋值

  • 给@SpringBootTest注解的classes属性赋值,将当前启动类的编译包赋值给它

    • @SpringBootTest(classes = HotelDemoApplication.class)
      

解决办法2:将从当前测试类放到启动类的同一个包下