G
N
I
D
A
O
L

bug散记--根据报错信息

组件异常

nacos

  1. 报错信息
com.alibaba.nacos.api.exception.NacosException:java.lang.reflect.InvocationTargetException
  1. 原因:
  • 在common服务中引入了nacos-config依赖,而所有导入common依赖的服务启动的时候都会报这样的异常信息。
  • 原因就是,该依赖会检查nacos配置中心是否对服务做了命名空间(product服务因为在nacos配置中心做了命名空间而不会显示该异常信息)
 <!--配置中心来做配置管理相关依赖-->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
        </dependency>
        <dependency>
  1. 解决办法:
  • nacos配置中心对相应的微服务做命名空间即可
  • 删除该依赖【不太建议,该异常不会影响服务的启动和使用】

补充:nacos有注册发现和配置中心两大功能。配置文件优先读取顺序是:配置中心>本地配置

SpringTest

  1. 报错信息
nable to find a @SpringBootConfiguration, you need to use @ContextConfiguration or @SpringBootTest(classes=...) with your test
  1. 背景描述
    引入rabbitmq依赖,需要在测试类中做创建交换机、队列等的测试。需要用到application.yml中的配置项目hostport

  2. 原因
    springBoot项目的根路径下缺少主配置类Application.class造成的,即找不到配置文件的内容

  3. 解决方案

  • 最常见的:main的包路径和test的包路径写不一致
  • 测试类中缺少@RunWith(SpringRunner.class)测试启动器。不过intellij Idea已经融入了环境配置,若是用idea开发加不加都没关系
posted @ 2025-07-19 18:56  Bingo39  阅读(30)  评论(0)    收藏  举报