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

Bundler无法找到特定平台gem:为何尝试获取rails x86_64-linux?

解决Bundler寻找rails x86_64-linux的问题

原因分析

  • 问题根源在项目的Gemfile.lock文件里,这个文件会记录之前安装依赖时的平台特定版本信息。你移除了Gemfile里的版本限制,但Bundler会优先参考旧锁文件的记录,所以会尝试寻找带x86_64-linux后缀的Rails版本。
  • 直接执行gem install rails时,RubyGems会自动适配当前系统的兼容版本,不受旧锁文件约束,因此能正常安装。

修复方法

  • 删除旧锁文件:直接删掉项目根目录下的Gemfile.lock,再重新执行bundle install。Bundler会重新生成适配当前环境的锁文件,不会再请求带平台后缀的版本。
  • 指定通用平台(可选):如果不想删除锁文件,可以在Gemfile顶部添加一行代码:
    platforms :ruby
    
    这会告诉Bundler只安装通用Ruby版本,忽略平台特定的版本记录。
  • 清理Bundler缓存(极端情况):如果上面的方法无效,执行以下命令清理本地缓存后重新安装:
    bundle clean --force
    bundle install
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.13 14:52:33