【问题标题】:Rails - Heroku Migration errorRails - Heroku 迁移错误
【发布时间】:2015-04-24 04:33:21
【问题描述】:

我刚刚在 localhost 上进行了迁移,它运行良好。推送到 heroku 后,我运行 heroku run rake db:migrate 并收到以下错误流...

c:/Program Files (x86)/Heroku/ruby-1.9.3/lib/ruby/site_ruby/1.9.1/rubygems/custo
m_require.rb:36:in require': cannot load such file -- ffi (LoadError)
from c:/Program Files (x86)/Heroku/ruby-1.9.3/lib/ruby/site_ruby/1.9.1/r
ubygems/custom_require.rb:36:inrequire'
from C:/Users/amoosa/.heroku/client/vendor/gems/rest-client-1.8.0/lib/re
stclient/windows/root_certs.rb:2:in <top (required)>'
from C:/Users/amoosa/.heroku/client/vendor/gems/rest-client-1.8.0/lib/re
stclient/windows.rb:7:inrequire_relative'

...更多行类似的错误。

我该如何解决这个问题?我在 Windows/Ruby 2.0/Rails 4.0 上

在过去的一年里,我在这个项目上运行了很多迁移,之前没有遇到过这个问题。

【问题讨论】:

  • 也许 heroku 看起来使用 Ruby 1.9 而你是 Ruby 2.0 看看。如果抛出类似的错误,通过更改您本地的 ruby​​ 版本?
  • 嗯...似乎这不仅仅是一个迁移问题。所有 heroku 命令都给我同样的错误 - heroku rollback heroku ps 等。
  • 更改我的本地版本会做什么? Heroku 使用旧版本似乎很奇怪。
  • 如果您使用的是rvm,请安装rvm install 1.9.3,然后通过rvm use 1.9 使用该版本。并尝试执行本地迁移。
  • 要在 heroku 上指定你的 ruby​​ 版本,你的 gemfile 中需要 ruby​​ '2.0.0'

标签: ruby-on-rails ruby heroku


【解决方案1】:

认为您的 heroku 工具带安装已损坏。

也许您更新了您的计算机或 ruby​​ 版本,并且删除了一些文件。

看起来heroku 命令正在尝试从您的本地目录加载它的一些 ruby​​ 文件,并发现它需要的文件丢失了。

缺少的文件是文件第 36 行中引用的本地文件: c:/Program Files (x86)/Heroku/ruby-1.9.3/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb

我建议重新安装 heroku 工具带并重试。

我可能错了……但这是我在日志中看到的。

【讨论】:

  • 谢谢。我问heroku支持,他们告诉我同样的事情。我重新安装了toolbelt,它工作正常。我回来写答案,看到你的:-)
猜你喜欢
  • 2015-04-04
  • 2012-11-11
  • 2011-02-17
  • 2016-10-03
  • 1970-01-01
  • 2017-08-03
  • 1970-01-01
  • 2014-06-17
  • 2016-09-04
相关资源
最近更新 更多