bug散记--根据报错信息
组件异常
nacos
- 报错信息
com.alibaba.nacos.api.exception.NacosException:java.lang.reflect.InvocationTargetException
- 原因:
- 在common服务中引入了nacos-config依赖,而所有导入common依赖的服务启动的时候都会报这样的异常信息。
- 原因就是,该依赖会检查nacos配置中心是否对服务做了命名空间(product服务因为在nacos配置中心做了命名空间而不会显示该异常信息)
<!--配置中心来做配置管理相关依赖-->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
<dependency>
- 解决办法:
- 在nacos配置中心对相应的微服务做命名空间即可
- 删除该依赖【不太建议,该异常不会影响服务的启动和使用】
补充:nacos有注册发现和配置中心两大功能。配置文件优先读取顺序是:配置中心>本地配置
SpringTest
- 报错信息
nable to find a @SpringBootConfiguration, you need to use @ContextConfiguration or @SpringBootTest(classes=...) with your test
-
背景描述
引入rabbitmq依赖,需要在测试类中做创建交换机、队列等的测试。需要用到application.yml中的配置项目host、port等 -
原因
springBoot项目的根路径下缺少主配置类Application.class造成的,即找不到配置文件的内容 -
解决方案
- 最常见的:
main的包路径和test的包路径写不一致 - 测试类中缺少
@RunWith(SpringRunner.class)测试启动器。不过intellij Idea已经融入了环境配置,若是用idea开发加不加都没关系

浙公网安备 33010602011771号