You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何解决Ubuntu 16.04安装RabbitMQ 3.7.4与Erlang/OTP 20的依赖错误

解决Ubuntu 16.04上RabbitMQ 3.7.4与Erlang/OTP 20依赖冲突问题

步骤1:彻底卸载现有Erlang版本

清理系统中已安装的高版本Erlang,消除版本干扰:

sudo apt-get remove --purge erlang* esl-erlang
sudo apt-get autoremove
sudo apt-get clean

步骤2:添加Erlang官方旧版本源

针对Ubuntu 16.04(xenial)添加Erlang Solutions的源,用于获取OTP 20版本:

# 导入GPG密钥
wget -O- https://packages.erlang-solutions.com/ubuntu/erlang_solutions.asc | sudo apt-key add -
# 添加源配置
echo "deb https://packages.erlang-solutions.com/ubuntu xenial contrib" | sudo tee /etc/apt/sources.list.d/erlang-solutions.list

步骤3:固定Erlang版本为OTP 20系列

创建版本优先级配置文件,强制系统安装指定的Erlang版本:

sudo nano /etc/apt/preferences.d/erlang.pref

写入以下内容后保存退出(Ctrl+O 回车确认,Ctrl+X 退出):

Package: erlang*
Pin: version 1:20.*
Pin-Priority: 1001

步骤4:安装指定版本的Erlang依赖

更新源后,安装RabbitMQ 3.7.4所需的OTP 20系列组件:

sudo apt-get update
sudo apt-get install erlang-base=1:20.3.8.26-1 erlang-crypto=1:20.3.8.26-1 erlang-eldap=1:20.3.8.26-1 erlang-inets=1:20.3.8.26-1 erlang-mnesia=1:20.3.8.26-1 erlang-os-mon=1:20.3.8.26-1 erlang-parsetools=1:20.3.8.26-1 erlang-public-key=1:20.3.8.26-1 erlang-runtime-tools=1:20.3.8.26-1 erlang-ssl=1:20.3.8.26-1 erlang-syntax-tools=1:20.3.8.26-1 erlang-tools=1:20.3.8.26-1 erlang-xmerl=1:20.3.8.26-1

步骤5:安装RabbitMQ 3.7.4

下载对应版本的deb包并完成安装,若出现依赖遗漏则自动修复:

wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.7.4/rabbitmq-server_3.7.4-1_all.deb
sudo dpkg -i rabbitmq-server_3.7.4-1_all.deb
sudo apt-get -f install

步骤6:锁定版本防止自动升级

避免后续系统更新时误升级Erlang或RabbitMQ:

sudo apt-mark hold erlang* rabbitmq-server

内容的提问来源于stack exchange,提问作者Muhammad

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 06:13:29