“你的Ruby版本是2.4.2,但你的Gemfile指定为2.5.0” - 为什么?

时间:2018-02-08 04:36:34

标签: ruby heroku

在我的.ruby-version和Gemfile中指定了ruby 2.5.0。当我运行“ruby -v”时,我得到“2.5.0”。但是,在部署到Heroku时,我收到此错误:

    Your Ruby version is 2.4.2, but your Gemfile specified 2.5.0

为什么呢?如何解决?

3 个答案:

答案 0 :(得分:3)

根据https://devcenter.heroku.com/articles/ruby-versions#troubleshooting以下原因导致此问题

  1. 您的捆绑包版本可能已经过时了
  2. GemfileGemfile.lock
  3. 之间的版本可能不匹配

答案 1 :(得分:0)

如果ruby -v输出2.5.0,您可能需要更新Gemfile.lock。最好的方法是使用bundler。

检查项目根目录中的Gemfile.lock文件,看看它引用的Ruby版本。它可能会说ruby 2.4.2

运行bundle updatebundle install会使您的GemfileGemfile.lock再次匹配。

答案 2 :(得分:0)

第一次更新时,您的PC /笔记本电脑中安装了Ruby版本(如果有)!!

删除用宝石文件编写的红宝石“ [版本号]”

只需将版本调整为PC中安装的升级版本即可。<3