问题
I'm absolute newbie in Ruby and Rails project, so I'm sorry if this is dumb question.
I've installed heroku toolbelt using wget -qO- https://toolbelt.heroku.com/install-ubuntu.sh | sh
. Also I tried gem install heroku
. But when I type:
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>'
I've checked in google and people suggest that gem and current ruby are different versions so I've checked it and they seem to the same:
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
I have no idea what to do more, so please help.
Sorry for the maybe stupid question, thanks in advance.
EDIT: Forgot to say I'm running Ubuntu 12.10.
回答1:
The problem is that the heroku
executable you installed probably starts with a line like this:
#!/usr/bin/ruby
This will force the heroku
command to always use the system-wide ruby (/usr/bin/ruby
) and it will never run your rvm version of ruby.
To fix it simply edit the first line of the heroku
script to this:
#!/usr/bin/env ruby
This will make the heroku
command run whichever ruby command is in the current PATH
, instead of a hard coded path like previously.
To find the location of the heroku
script, so you can edit it, simply type:
which heroku
It should print out the location of the script so you can find it and load it into your editor.
回答2:
Also if you do not have write permission you may enter:
:w !sudo tee % > /dev/null
to save successfully .
来源:https://stackoverflow.com/questions/13432209/problems-with-heroku-toolbelt