Erlang Rabbitmq消息发送错误

Erlang Rabbitmq消息发送错误,erlang,message,rabbitmq,Erlang,Message,Rabbitmq,我尝试将消息发送到rabbitmq服务器: send_message(Channel, Host, Password, Message) -> amqp_channel:cast(Channel, #'basic.publish'{exchange = <<"">>}, routing_key = <<"test">>,

我尝试将消息发送到rabbitmq服务器:

send_message(Channel, Host, Password, Message) ->
   amqp_channel:cast(Channel, #'basic.publish'{exchange = <<"">>},
                               routing_key = <<"test">>,
                              #amqp_msg{payload = Message}).
发送消息(频道、主机、密码、消息)->
amqp_channel:cast(channel,#'basic.publish'{exchange=},
路由_键=,
#amqp_msg{payload=Message})。
但是得到错误:

Error in process <0.431.0> with exit value:
{function_clause,[{gen_server,cast, [2,{cast,{'basic.publish',0,<<0
bytes>>,<<7 bytes>>,false,false},
{amqp_msg,{'P_basic',undefined,undefined,undefined,undefined,undefined,undefined,
undefined,undefined,undefined,undefined,undefined...
退出值为的过程中出现错误: {function_子句,[{gen_server,cast,[2,{cast,{'basic.publish',0,,,false,false}, {amqp_msg,{'P_basic',未定义,未定义,未定义,未定义,未定义,未定义, 未定义,未定义,未定义,未定义,未定义。。。 如何修复它?如何正确地将消息发送到rabbitmq服务器

谢谢。

检查通道的值:从stacktrace可以看出它等于2,这不是一个有效的Pid


调用send_message/4的代码必须执行一些奇怪的操作,并且不能向其传递有效的通道。

您使用的是哪个版本的Erlang客户端?