关于Rails项目启动时出现cannot load such file -- rack/media_type (LoadError)错误的求助
解决Rails启动时
rack/media_type加载失败的问题 我之前遇到过几乎一模一样的问题!当时折腾了好一会儿才搞定,给你几个亲测有效的尝试方向:
清理并重新安装项目依赖
有时候本地gem缓存或者bundle的安装状态会出问题,导致rack的核心文件缺失。先执行以下命令彻底清理旧依赖,再重新安装:bundle clean --force bundle install这一步会删掉项目未引用的冗余gem,确保rack 1.6.13的所有文件都完整安装。
用
bundle exec强制使用项目指定的依赖
可能你的全局rbenv环境里的rack版本和项目锁定的版本冲突了,导致启动时加载了错误的gem。试试用bundle exec来启动Rails:bundle exec rails s这样能确保严格使用Gemfile.lock里指定的rack 1.6.13版本。
检查rack gem的文件完整性
直接去你的rbenv路径下查看rack的media_type文件是否存在:~/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/rack-1.6.13/lib/rack/media_type.rb如果这个文件不存在,说明rack gem安装不完整,手动卸载后重新安装:
gem uninstall rack -v 1.6.13 bundle install在Gemfile里明确锁定rack版本
打开项目的Gemfile,添加明确的rack版本指定:gem 'rack', '1.6.13'然后执行
bundle update rack锁定这个版本,避免其他gem的依赖导致版本冲突。
内容的提问来源于stack exchange,提问作者Hảo Trương
相关产品推荐
相关产品推荐

