java.lang.IllegalStateException: Unable to find a @SpringBootConfiguration, you need to use @Context

【开发环境】SpringBoot+Mybatis,开发工具IDEA

【问题场景】

在做Test单元测试的时候出现了这样的异常情况;

【异常信息】

java.lang.IllegalStateException: Unable to find a @SpringBootConfiguration, you need to use @Context

开发工具上也提示如图这样的红色标识;

【问题分析】

出现这个异常的原因有两种情况:1、没有启动类文件;2、启动类文件和测试类文件不在同样的包路径下;

第一种情况:没有启动类文件基本不可能,因为项目在创建的时候肯定会写这个启动类文件,检查一下在main路径下是否有启动类文件,如果没有则可能是删除文件夹的时候不注意删掉了;

所以必要提示:在写项目的时候删除任何文件或者文件夹都要备份一份要删除的东西,如果删错了可以重新找回;否则真的删错了辛苦写了一周的代码,一下子就全没了,哭死的心都有;

删除文件之前要备份!!!

第二种情况:第二种情况文件路径不一致的可能性非常大,建议先检查一下;

 在main路径下的StoreApplication文件和在test路径下的StoreApplicationTests文件,这两个文件的路径名称要一致,路径一致测试类才能找到启动类进行测试,否则就会出现这样的异常情况。

正常情况下是一致的,如果自己更改过文件夹名称或者删除过某些文件夹就会出现不一致的情况,所以删除文件夹要慎重,慎重!!!

【解决问题】

如果文件路径不一致,找到对应的文件,将两个文件放在相同的路径下即可,一个在main路径下,一个在test路径下,在main和test给根目录下的文件路径要完全一致;

如果没有 StoreApplication启动类文件,那自己手动敲一份;文件内容很简单,类似如下内容

 

import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

/**
 * 【解释】
 * @MapperScan("com.cy.mapper") 这个注解的意思是在项目启动的时候自动加载所有的mapper接口文件,括号里面是接口的包的路径
 */


@SpringBootApplication
@MapperScan("com.cy.store.mapper")
public class StoreApplication {
        public static void main(String[] args) {
            SpringApplication.run(StoreApplication.class,args);
            }//main


}//class
  • 37
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值