无法安装LocomotiveCMS:依赖冲突与wagon版本升级求助
解决LocomotiveCMS依赖冲突与Wagon版本升级问题
1. 解决Ruby版本兼容问题
LocomotiveCMS Steam最新版明确要求Ruby < 3,你需要安装一个符合要求的稳定Ruby版本(推荐2.7.x系列,比如2.7.8),用Ruby版本管理器(rbenv或rvm)来管理多版本Ruby:
- 安装rbenv/RVM后,执行
rbenv install 2.7.8安装指定版本 - 切换到项目目录,执行
rbenv local 2.7.8绑定当前项目使用该版本 - 验证版本:
ruby -v,确认输出为2.7.8
2. 安装指定版本的Wagon
方法一:Gemfile + Bundler(推荐)
在项目的Gemfile中明确指定Wagon和Steam的兼容版本:
source 'https://rubygems.org' # 指定需要的Wagon版本 gem 'locomotivecms_wagon', '~> 3.0.2' # 搭配兼容的Steam版本(2.x系列适配Ruby 2.7) gem 'locomotivecms_steam', '~> 2.1'
然后执行:
- 删除旧的
Gemfile.lock(避免遗留依赖) bundle install- 用
bundle exec wagon version验证版本,确保输出3.0.2+
方法二:直接用gem命令安装
先卸载旧版本的Wagon:gem uninstall locomotivecms_wagon
选择卸载1.58版本后,执行:gem install locomotivecms_wagon -v 3.0.2
之后执行wagon version即可看到正确版本
3. 常见排查点
- 确保终端使用的是版本管理器管理的Ruby(而非系统Ruby),否则gem安装的包会到系统Ruby目录,导致版本不匹配
- 如果Gemfile里有其他依赖限制了Wagon版本,检查并调整这些依赖的版本范围,确保不与3.0.2+的Wagon冲突
内容的提问来源于stack exchange,提问作者Charmi Demg
相关产品推荐
相关产品推荐

