Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby heroku工具带的问题_Ruby_Heroku_Gem_Installation_Rvm - Fatal编程技术网

Ruby heroku工具带的问题

Ruby heroku工具带的问题,ruby,heroku,gem,installation,rvm,Ruby,Heroku,Gem,Installation,Rvm,我是Ruby和Rails项目的新手,所以如果这是一个愚蠢的问题,我很抱歉 我使用wget-qO-https://toolbelt.heroku.com/install-ubuntu.sh |sh。我还尝试了gem安装heroku。但当我打字时: MY_USER@home-PC:~$ heroku version <internal:gem_prelude>:1:in `require': cannot load such file -- rubygems.rb (LoadError)

我是Ruby和Rails项目的新手,所以如果这是一个愚蠢的问题,我很抱歉

我使用
wget-qO-https://toolbelt.heroku.com/install-ubuntu.sh |sh
。我还尝试了
gem安装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>'
我不知道还能做些什么,所以请帮忙

抱歉问了这个可能很愚蠢的问题,提前谢谢

编辑:
忘了说我正在运行Ubuntu 12.10。

问题是,您安装的可执行文件heroku可能以这样一行开头:

#!/usr/bin/ruby
这将迫使
heroku
命令始终使用系统范围的ruby(
/usr/bin/ruby
),并且它永远不会运行您的rvm版本的ruby

要修复它,只需将
heroku
脚本的第一行编辑为:

#!/usr/bin/env ruby
这将使
heroku
命令运行当前
路径
中的任何ruby命令,而不是像以前那样的硬编码路径

要查找heroku脚本的位置,以便编辑它,只需键入:

which heroku

它应该打印出脚本的位置,以便您可以找到它并将其加载到编辑器中。

如果您没有写入权限,也可以输入:

:w !sudo tee % > /dev/null

成功保存。

尝试运行
ruby`which heroku`version
。然后会发生什么?请注意heroku的
周围的倒勾号
我的_USER@home-PC:~$ruby`heroku`version
返回:
heroku toolbelt/2.33.1(i686 linux)ruby/1.9.3
谢谢,我完全理解你的意思,但是
`whick hereku`
返回相同的错误
:1:require\'中:无法加载这样的文件--rubygems.rb(加载错误)from:1:in
。因此我在Nautilus中搜索了该文件,并在
/usr/local/heroku/bin
中找到了
heroku`文件,第一行是
!/usr/bin/env ruby1.9.1
。我已将其更改为
。/usr/bin/env ruby
,这似乎暂时有效。非常感谢,现在我可以尝试学习这门语言了。再次感谢!@erik1001好的。谢谢,很抱歉我的不好。我编辑了答案(
,heroku
应该在没有反勾的情况下运行)。但是很好,你还是设法找到了答案。祝ruby好运。有时候,第一行可能是类似
/usr/bin/env ruby1.9.1
,其中已经包含
env
)但是仍然将其编辑为
/usr/bin/env ruby
(只是普通的
ruby
,没有版本)应该可以使其与rvm一起工作。
:w !sudo tee % > /dev/null