Heroku gem不能与RVM一起使用

我正在http://railstutorial.org/chapters/beginning#sec:1.4.1上关注Ruby on Rails教程,一切顺利,直到我试图让我的应用程序继续使用Heroku。

我安装了heroku,工作正常,但现在当我运行heroku keys:add或任何其他heroku命令时,我收到以下错误:

 /home/sirswap/.rvm/gems/ruby-1.9.2-p0@rails3tutorial/gems/rest-client-1.4.2/lib/restclient.rb:9:in `rescue in ': no such file to load -- net/https. Try running apt-get install libopenssl-ruby (LoadError) from /home/sirswap/.rvm/gems/ruby-1.9.2-p0@rails3tutorial/gems/rest-client-1.4.2/lib/restclient.rb:5:in `' from :29:in `require' from :29:in `require' from /home/sirswap/.rvm/gems/ruby-1.9.2-p0@rails3tutorial/gems/rest-client-1.4.2/lib/rest_client.rb:2:in `' from :29:in `require' from :29:in `require' from /home/sirswap/.rvm/gems/ruby-1.9.2-p0@rails3tutorial/gems/heroku-1.9.14/lib/heroku/client.rb:2:in `' from :29:in `require' from :29:in `require' from /home/sirswap/.rvm/gems/ruby-1.9.2-p0@rails3tutorial/gems/heroku-1.9.14/lib/heroku.rb:3:in `' from :29:in `require' from :29:in `require' from /home/sirswap/.rvm/gems/ruby-1.9.2-p0@rails3tutorial/gems/heroku-1.9.14/bin/heroku:6:in `' from /home/sirswap/.rvm/gems/ruby-1.9.2-p0@rails3tutorial/bin/heroku:19:in `load' from /home/sirswap/.rvm/gems/ruby-1.9.2-p0@rails3tutorial/bin/heroku:19:in `' 

我做了错误消息所说的,并安装了libopenssl-ruby,但是heroku仍然无法正常工作。

我已经完成了搜索并找到了以下两个试图解决heroku错误的页面: http://www.mail-archive.com/heroku@googlegroups.com/msg05001.html http://blog.project-sierra由Matchi.com提供回到/存档/ 1534

我按照这些页面上的说明(相同),但heroku仍然无法正常工作。

我通常在windows上做我的工作,所以在ubuntu上对我来说一切都有点新鲜。 这是我的ruby环境:

  RubyGems Environment: - RUBYGEMS VERSION: 1.3.7 - RUBY VERSION: 1.9.2 (2010-08-18 patchlevel 0) [i686-linux] - INSTALLATION DIRECTORY: /home/sirswap/.rvm/gems/ruby-1.9.2-p0@rails3tutorial - RUBY EXECUTABLE: /home/sirswap/.rvm/rubies/ruby-1.9.2-p0/bin/ruby - EXECUTABLE DIRECTORY: /home/sirswap/.rvm/gems/ruby-1.9.2-p0@rails3tutorial/bin - RUBYGEMS PLATFORMS: - ruby - x86-linux - GEM PATHS: - /home/sirswap/.rvm/gems/ruby-1.9.2-p0@rails3tutorial - /home/sirswap/.rvm/gems/ruby-1.9.2-p0@global - GEM CONFIGURATION: - :update_sources => true - :verbose => true - :benchmark => false - :backtrace => false - :bulk_threshold => 1000 - REMOTE SOURCES: - http://rubygems.org/ 

我正在运行ubuntu 10.04。

任何有关后续步骤的帮助或建议都将不胜感激:)

我遇到了同样的问题,我认为这是因为没有安装运行时列出的所有ruby依赖项:

 $rvm requirements # it was earlier: rvm notes 

具体来说,我执行了[一定要先安装aptitude]:

 $sudo aptitude install build-essential bison openssl libreadline5 libreadline5-dev curl git zlib1g zlib1g-dev libssl-dev libsqlite3-0 libsqlite3-dev sqlite3 libxml2-dev 

毕竟,我重新编译了我的ruby安装(使用$rvm reinstall 1.9.2 ),heroku就像一个魅力。

嘿:)不知道它是否仍然相关或者这对你是否也有效……它对我有用。

有完全相同的问题..

我也注意到了
$ rails console

我收到的错误表明我在使用Readline时遇到了问题。

关注http://rvm.beginrescueend.com/packages/readline/帮助我解决了我遇到的所有问题。

我昨天吹了好几个小时。 最终,有点偶然(实际上更像是绝望),我查看了文件/ usr / bin / heroku

我注意到剧本的第一行说

  #!/usr/bin/env ruby1.9.1 

我把它改成了

 #!/usr/bin/env ruby 

它开始工作了。 重新安装ruby约10次后,用openssl重新安装。 翻白眼

我也正在使用Ubuntu 10.10上的Railstutorial,并在尝试添加Heroku密钥时得到完全相同的错误。 这解决了它:

 $ rvm remove 1.9.2 $ rvm pkg install openssl $ rvm install 1.9.2 -C --with-openssl-dir=$HOME/.rvm/usr 

阅读我关于如何在Linux上安装RVM的说明 。 您需要安装libssl-dev或net / https之类的东西不起作用。 没关系,只需安装并重新编译你的ruby即可。

在您的情况下,“重新编译您的ruby”可能通过发出:

 rvm install 

或者,您可以通过手动重新编译openssl扩展来取得一些进展:

 cd /home/sirswap/.rvm/src/ruby-1.9.2-p0/ext/openssl ruby extconf.rb make make install 

请重新安装ruby。 我是同样的问题,并通过重新安装ruby修复。

 rvm reinstall ruby 1.9.2