无法启动RabbitMQ:未定义的函数rabbitmqctl_escript:main/1
我想启动RabbitMQ作为JFrog X射线安装,我得到:无法启动RabbitMQ:未定义的函数rabbitmqctl_escript:main/1,rabbitmq,erlang,rabbitmqctl,escript,Rabbitmq,Erlang,Rabbitmqctl,Escript,我想启动RabbitMQ作为JFrog X射线安装,我得到: -bash-4.2$ /opt/jfrog/xray/app/third-party/rabbitmq/escript/rabbitmqctl escript: exception error: undefined function rabbitmqctl_escript:main/1 in function escript:run/2 (escript.erl, line 758) in call from escript
-bash-4.2$ /opt/jfrog/xray/app/third-party/rabbitmq/escript/rabbitmqctl
escript: exception error: undefined function rabbitmqctl_escript:main/1
in function escript:run/2 (escript.erl, line 758)
in call from escript:start/1 (escript.erl, line 277)
in call from init:start_em/1
in call from init:do_boot/3
我知道这不是开始服务的标准方式,这已经是3天战斗的结果
支票上写着:
-bash-4.2$ escript -s /opt/jfrog/xray/app/third-party/rabbitmq/escript/rabbitmqctl
escript: Cannot load module rabbitmqctl_escript from archive
已安装的版本:
# rpm -qa | grep 'erlang\|xray\|socat'
socat-1.7.3.2-2.el7.x86_64
erlang-22.3.4-1.el7.x86_64
xray-3.8.6-1.el6.x86_64
RabbitMQ是X射线的一部分。
版本:RabbitMQ 3.8.3
它首先使用sbin/rabbitmq服务器,但由于X射线使用rabbitmqctl,因此也应该使用它。卸载rabbitmq和Erlang/OTP,然后重新安装。确保所有erlang版本都已卸载,然后只重新安装一个,然后再安装兼容的RabbitMQ版本。这对我有用 编辑1
在我的例子中,我没有意识到我的系统安装了不止一个erlang,我安装了一个新的erlang和rabbit mq。即使是新版本也不起作用时,我花了将近2天的时间寻找答案。但后来我读了一些信息,他们说在一个系统中只应该安装一个版本的erlang。所以我检查了一下,发现安装了3个erlang版本。然后我删除了所有内容,重新安装了erlang和rabbit mq。这对我很有用。卸载RabbitMQ和Erlang/OTP,然后重新安装。确保所有erlang版本都已卸载,然后只重新安装一个,然后再安装兼容的RabbitMQ版本。这对我有用 编辑1
在我的例子中,我没有意识到我的系统安装了不止一个erlang,我安装了一个新的erlang和rabbit mq。即使是新版本也不起作用时,我花了将近2天的时间寻找答案。但后来我读了一些信息,他们说在一个系统中只应该安装一个版本的erlang。所以我检查了一下,发现安装了3个erlang版本。然后我删除了所有内容,重新安装了erlang和rabbit mq。这对我很有效。这并不能回答这个问题。一旦你有足够的钱,你将能够;相反@马克本宁菲尔德:为什么不呢?这并不能回答这个问题。一旦你有足够的钱,你将能够;相反@马克本宁菲尔德:为什么不呢?