【发布时间】: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 rollbackheroku ps等。 -
更改我的本地版本会做什么? Heroku 使用旧版本似乎很奇怪。
-
如果您使用的是
rvm,请安装rvm install 1.9.3,然后通过rvm use 1.9使用该版本。并尝试执行本地迁移。 -
要在 heroku 上指定你的 ruby 版本,你的 gemfile 中需要 ruby '2.0.0'
标签: ruby-on-rails ruby heroku