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