【问题标题】:How do I upgrade system gems on heroku?如何在heroku上升级系统宝石?
【发布时间】:2011-03-08 17:49:04
【问题描述】:

我在 heroku 竹-mri-1.9.2 堆栈上运行,当我推送到 heroku 时收到以下消息:我很难过:

  Installing hoe (2.9.1) /usr/ruby1.9.2/lib/ruby/1.9.1/rubygems/installer.rb:170:in `install': hoe requires RubyGems version >= 1.4. Try 'gem update --system' to update RubyGems itself. (Gem::InstallError)
    from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/source.rb:95:in `install'
    from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/installer.rb:55:in `block in run'
    from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/spec_set.rb:12:in `block in each'
    from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/spec_set.rb:12:in `each'
    from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/spec_set.rb:12:in `each'
    from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/installer.rb:44:in `run'
    from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/installer.rb:8:in `install'
    from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/cli.rb:225:in `install'
    from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/vendor/thor/task.rb:22:in `run'
    from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/vendor/thor/invocation.rb:118:in `invoke_task'
    from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/vendor/thor.rb:246:in `dispatch'
    from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/vendor/thor/base.rb:389:in `start'
    from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/bin/bundle:13:in `<top (required)>'
    from /usr/ruby1.9.2/bin/bundle:19:in `load'
    from /usr/ruby1.9.2/bin/bundle:19:in `<main>'
   FAILED: http://docs.heroku.com/bundler

有什么想法吗?提前致谢。

【问题讨论】:

  • 也许这会更好地作为支持请求提交给 heroku 本身。我很确定您无权更新 heroku 上的系统 gem,也许我错了。

标签: ruby-on-rails heroku


【解决方案1】:

我会从您发送到 github 的内容中排除“锄头”宝石。

group :test, :development do
  gem "hoe"
  # other gems you want to exclude from github
end

然后设置你的heroku变量:

heroku config:add BUNDLE_WITHOUT="development:test"

阅读更多:http://devcenter.heroku.com/articles/bundler

【讨论】:

  • 究竟应该在哪里添加上面的代码??? group :test, :development do gem "hoe" # 其他要从 github 中排除的 gem end
  • 这是锄头的巧妙解决方法,但它没有回答最初的问题。 ://
【解决方案2】:

尝试使用不同版本的方法:

hoe 2.10.0 
hoe 2.9.6 
hoe 2.9.5 
hoe 2.9.4 
hoe 2.9.3 

一次添加一个,捆绑,然后推送到heroku。

【讨论】:

    猜你喜欢
    • 2012-11-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多