这些 Ruby 版本中是否存在 heroku 命令?

8

在使用rbenv更新Ruby版本后,我无法使用Heroku命令行工具。

我收到以下错误信息:

> heroku
rbenv: heroku: command not found

The `heroku' command exists in these Ruby versions:
  2.0.0-p195

重新从toolbelt.heroku.com下载安装工具包并未解决问题。

1
任何答案都可以接受的解决方案怎么样?=) - Малъ Скрылевъ
可能是重复问题,参考这个链接,其中包含了关于 `heroku` 命令在 Ruby 版本中存在的信息。 - Sinan Ünür
我想知道一个副本怎么可能比原件早近两年 ;) - Sergiy Seletskyy
6个回答

10

我切换回之前的 Ruby 版本 2.0.0p195 并卸载了 'heroku' gem。

rbenv global 2.0.0p195

gem uninstall heroku

然后我切换到最新的 Ruby 版本 2.0.0p353 并重新安装了 Toolbelt toolbelt.heroku.com

rbenv global 2.0.0p353

2
这个。天啊,我对这个问题感到非常沮丧。谢谢! - starscream_disco_party
1
在从rbenv中删除所有其他版本的Ruby的heroku gem并切换回所需的最新版本后,我需要运行“rbenv rehash”才能找到toolbelt heroku命令。 - Michael Glenn

9
如果您正在使用rbenv,以下是我解决此问题的步骤。 错误信息
rbenv: heroku: command not found

The `heroku' command exists in these Ruby versions:
  2.2.2

需要做什么

  1. rbenv local 2.2.2
  2. gem uninstall heroku
  3. rbenv rehash

准备好了!


为什么需要切换到特定版本?为什么不能让可执行文件在当前版本上运行? - AlxVallejo

4

Heroku不建议使用最近版本的heroku gem。如果您已经安装了这个gem,请先使用以下命令卸载:

$ gem uninstall heroku

然后按照Heroku网站上指定的步骤安装工具包:

对于Ubuntu/Debian

$ wget -qO- https://toolbelt.heroku.com/install-ubuntu.sh | sh

对于其他Linux

$ wget -qO- https://toolbelt.heroku.com/install.sh | sh

对于Windows/MacOS,请查看链接上的说明。


如果已安装,则需要在条件下关闭它。 - Малъ Скрылевъ
2
要卸载旧版本的 heroku,您需要切换到安装它的 Ruby 版本,卸载 gem,重新安装 Toolbelt,然后将全局 Ruby 版本更改回较新的版本。 - starscream_disco_party

2

我遇到了类似的问题。我在不同的ruby版本上安装了heroku gem,尽管我已经从官网下载了heroku toolbelt包并进行了安装,但仍然出现以下错误:

rbenv: heroku: command not found

我发现在从所有的ruby版本中卸载了gem之后,我需要运行以下命令:

rbenv rehash

之后我发现一切都运行得很完美。我从这个stackoverflow回答中发现了问题:

ruby - heroku:命令未找到


1

我也遇到了这个问题,如果你在终端中执行以下命令:

which convert

你会得到这个返回值: Users/user_name/.rbenv/shims/convert,你需要在shims中删除这个文件。
rm Users/user_name/.rbenv/shims/convert

如果您再次进行转换,它应该会提供不同的URL:/usr/local/bin/convert

0
在MacOS上,这里的问题是rbenvbrewheroku二进制文件混淆了。
Heroku建议Mac使用brew进行安装。现在,你需要确保你没有使用任何其他由rbenv管理的Ruby版本安装了宝石(gem)。
如果有,请重新安装它们,然后你就可以开始了。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接