sur*_*tus 5 ruby gem install heroku rvm
我是Ruby和Rails项目的绝对新手,所以如果这是一个愚蠢的问题,我很抱歉.
我已经安装了heroku工具带wget -qO- https://toolbelt.heroku.com/install-ubuntu.sh | sh.我也试过了gem install heroku.但是当我键入:
MY_USER@home-PC:~$ heroku version
<internal:gem_prelude>:1:in `require': cannot load such file -- rubygems.rb (LoadError)
from <internal:gem_prelude>:1:in `<compiled>'
Run Code Online (Sandbox Code Playgroud)
我已经检查了谷歌,人们建议宝石和当前的红宝石是不同的版本,所以我检查了它们,它们似乎是一样的:
MY_USER@home-PC:~$ which ruby
/home/MY_USER/.rvm/rubies/ruby-1.9.3-p327/bin/ruby
MY_USER@home-PC:~$ gem env | grep 'RUBY EXECUTABLE'
- RUBY EXECUTABLE: /home/MY_USER/.rvm/rubies/ruby-1.9.3-p327/bin/ruby
Run Code Online (Sandbox Code Playgroud)
我不知道该怎么做,所以请帮忙.
对不起这个可能很愚蠢的问题,提前谢谢.
编辑:忘了说我正在运行Ubuntu 12.10.
Cas*_*per 18
问题是heroku您安装的可执行文件可能以这样的行开头:
#!/usr/bin/ruby
Run Code Online (Sandbox Code Playgroud)
这将强制heroku命令始终使用系统范围的ruby(/usr/bin/ruby),它永远不会运行你的rvm版本的ruby.
要修复它,只需编辑heroku脚本的第一行:
#!/usr/bin/env ruby
Run Code Online (Sandbox Code Playgroud)
这将使heroku命令运行当前的ruby命令PATH,而不是像以前那样的硬编码路径.
要查找heroku脚本的位置,以便编辑它,只需键入:
which heroku
Run Code Online (Sandbox Code Playgroud)
...在你的命令行上.它应该打印出脚本的位置,以便您可以找到它并将其加载到编辑器中.