com.rabbitmq.client.ShutdownSignalException: channel error; protocol method:

本文探讨了UnknownHostException和ShutdownSignalException等RabbitMQ常见错误的解决方案,包括检查配置文件中的IP地址格式、避免交换机名称重复定义以及解决Java main方法中依赖注入失败的问题。

UnknownHostException: 192.168.61.128

配置文件中192.168.61.128中间或前或后可能有空格或特殊字符

com.rabbitmq.client.ShutdownSignalException: channel error; protocol method:

网上有多种说法,我这是是在发送消息producer端报的错误

可能原因是rabbitmq控制台已经有了名为fanout_exchange的交换机,我在java代码中有重复定义了,试着修改了下名字就不报错了,加了个1

在main方法里不能注入对象

程序执行是这样子的,先找到main方法开始执行,然后从上先执行static修饰的语句,显示初始化ac,然后开始执行main方法里的语句,由于studentService没有初始化,会在执行它的方法时报出空指针异常,程序运行失败。

为什么不会先实例化StudentService呢?因为StudentService加上@Autowired注解后,
注入是在容器中实例化对象,不再是静态的。而Java变量的初始化顺序为:静态变量或静态语句块–>实例变量或初始化语句块–>构造方法–>@Autowired。main方法中只有启动项目才能加载配置文件,才能自动注入,才能找到响应的bean。

public static void main( String[] args )
{
    ApplicationContext actx = new ClassPathXmlApplicationContext("classpath:Spring-config.xml");

    UserService userService = actx.getBean(UserServiceImpl.class);
    userService.getUser();
}

idea不能创建类

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

塔◎

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值