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

执行rails s因mime-types报错,Ruby与Rails版本适配咨询

问题解答

Ruby 2.6.3 与 Rails 5.0.7.2 的兼容性

Ruby 2.6.3 和 Rails 5.0.7.2 是兼容的。Rails 5.0 官方支持的 Ruby 版本范围是 2.2.2 至 2.6.x,你的版本组合不存在底层兼容问题,错误是依赖包版本冲突或缺失导致的。

两类错误的解决方案

1. mime-types-2.99.3 的 SyntaxError

Ruby 2.6 开始将 _1、_2、_3 这类变量名设为保留编号参数,而旧版 mime-types-2.99.3 的代码中使用了这些变量,直接触发语法冲突。

解决步骤:

  • 修改项目根目录的 Gemfile,指定兼容 Ruby 2.6 的 mime-types 版本:
    gem 'mime-types', '~> 3.2'
    
  • 执行 bundle update mime-types 完成版本更新
  • 重新运行 rails s 验证

2. carrierwave-video 的 LoadError

无法加载该文件通常有以下几种原因及对应解决方式:

  • gem 未安装或版本不兼容:检查 Gemfile 中是否包含 carrierwave-video,若没有则添加适配 Rails 5.0 的版本(比如 gem 'carrierwave-video', '~> 0.6.0'),再执行 bundle install
  • 系统依赖缺失:carrierwave-video 依赖 ffmpeg 工具,需确保系统已安装该工具(Ubuntu 用 sudo apt install ffmpeg,macOS 用 brew install ffmpeg)
  • 配置问题:若已安装 gem 和 ffmpeg,检查项目中 carrierwave 的配置文件是否正确引入了 carrierwave-video 的模块

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.17 23:07:01