将 Rails 应用程序升级为使用 Ruby 2.0.0(从 1.9.3 开始)后,我在尝试通过 rake <stage> deploy
部署到 Heroku 时开始收到此错误.
Your Ruby version is 1.9.3, but your Gemfile specified 2.0.0 (Bundler::RubyVersionMismatch)
它似乎也会导致此错误,(但我可以在没有 heroku_san
帮助程序的情况下手动运行 Heroku 命令,因此授权不是问题)。
Expected(200) <=> Actual(401 Unauthorized)
我将 gems 更新到了最新版本,还更新了 Heroku Toolbelt。
我找到了这个pull request并修补了我的版本,但错误仍然存在。
如何解决这个问题(在 Ubuntu 和 OSX 上)?
其他信息:
- Ubuntu 12.04 LTS x64
- Rails 3.2.13
- Ruby 2.0.0-p247
- heroku-api-0.3.15
- heroku_san-4.0.8
- heroku-toolbelt/2.41.0 (x86_64-linux)
- rvm 1.22.10
最佳答案
我在 Ubuntu 上的解决方案是修改
/usr/local/heroku/bin/heroku
并将 shebang 行更改为
#!/usr/bin/env ruby
感谢Pivotal Labs为此。
(我不使用 Mac。)
关于ruby-on-rails - 使用heroku_san gem 时出错:您的 Ruby 版本是 x.x.x,但您的 Gemfile 指定了 x.x.x (Bundler::RubyVersionMismatch),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19056267/