36

安装 Heroku Toolbelt 后,在 Mac 上的终端中尝试运行以下命令:

heroku

我得到错误:

bash: heroku: command not found

当我做:

gem environment

我得到:

- RUBYGEMS VERSION: 1.3.6
- RUBY VERSION: 1.8.7 (2012-02-08 patchlevel 358) [universal-darwin11.0]
- INSTALLATION DIRECTORY: /Library/Ruby/Gems/1.8
- RUBY EXECUTABLE: /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby
- EXECUTABLE DIRECTORY: /usr/bin
- RUBYGEMS PLATFORMS:
 - ruby
 - universal-darwin-11
- GEM PATHS:
 - /Library/Ruby/Gems/1.8
 - /Users/Bart/.gem/ruby/1.8
 - /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8
- GEM CONFIGURATION:
 - :update_sources => true
 - :verbose => true
 - :benchmark => false
 - :backtrace => false
 - :bulk_threshold => 1000
- REMOTE SOURCES:
 - http://rubygems.org/

我尝试向 $PATH 添加多个路径,但没有任何效果......

4

14 回答 14

34

安装 Toolbelt 后手动添加符号链接为我修复了它。

sudo ln -s /usr/local/heroku/bin/heroku /usr/bin/heroku

于 2012-10-11T18:09:18.443 回答
31

(这个答案适用于典型的其他人,可能会在这里登陆,并且可能会发现它很有用)

如果您snap通过命令行使用命令来安装 heroku snap,如下
sudo snap install heroku --classic 所示(您将在 heroku 文档中找到该内容)。
而且安装后 heroku 命令不可用。那么这里的解决方案和原因:

首先要知道,当您安装新快照时,它会被添加到/snap文件夹中。将创建一个具有快照名称的新文件夹 ( /snap/heroku),并将该命令的可执行文件添加到/snap/bin ( /snap/bin/heroku)。

尝试

/snap/bin/heroku help

你会发现它工作得很好。

解决方案:所以您只需将/snap/bin 添加到您的 PATH 环境变量中。

Heroku 认为它已经完成了。我不知道,这是否应该在安装snapd包时自动完成。但无论如何,就是这样。

有关如何向 PATH 环境变量添加新路径,请查看下面的链接,以获得一个好主意(如果您还不知道):

此处链接有关您需要注销并重新登录或重新启动的原因

这里有一个例子:

sudo nano /etc/environment

我选择通过 /etc/environment 添加路径(记住你不能使用 shell 命令)。

PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/node-v9.6.1-linux-x64/bin:/snap/bin

你可以看到我在最后添加了它(很简单)。
重新启动计算机或注销并重新登录(PAM 脚本在会话创建时从 /etc/environment 处理 PATH 的构建)

如果您想立即生效,请执行:

source /etc/environment && export PATH

(它只影响当前打开的 shell 和子进程)

这是在 /etc/profile 中执行此操作的另一个示例:

if [ "`id -u`" -eq 0 ]; then
  PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
else
  PATH="/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games"
fi
PATH="$PATH:/snap/bin"
export PATH

我只添加了一行(最后一行之前的一行,并注意整个文件(/etc/profile)的一部分)。
重新启动或注销并重新登录。

执行 :

source /etc/profile

立即运行(影响当前 shell 和子进程)。

有不同的方法可以添加到 PATH 中,如果我们发挥想象力,甚至可以有无数种方法。这些方式之间的区别在于它何时设置和执行,以及它的范围。以及组织方面(例如,我可以拥有自己的文本列表(每行一条路径),并以正确的方式和位置对其进行编译和执行)。更好地查看上面的链接,我在那里做了一个很好的选择,以便更好地了解事情是如何工作的,以及选择什么方法。但通常以上两个对于系统范围的配置,主要是你需要的。

于 2018-07-31T12:18:43.710 回答
20

请记住实际获取安装文件。

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

对我不起作用。而作为一个 linux noob 我使用了:

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

请注意 '-' 选项中缺少wget。这将安装源下载到我的当前目录。

然后我做了:

bash install-ubuntu.sh 

这为我完成了安装。

然后:

heroku login

作品!!

于 2015-10-14T21:24:37.127 回答
17

赶紧跑

$ gem install heroku

形成你的应用程序就是这样。

于 2015-10-31T05:21:25.890 回答
9

snap我正在使用它的路径中没有的 zsh 。所以只需将其添加到~/.zshrc.

export PATH=$PATH:/snap/bin

于 2018-08-18T07:18:24.177 回答
8

先跑gem install heroku,它给了我以下信息:

heroku 必须从cli.heroku.com安装。该宝石不再可用。(运行时错误)

Heroku 的步骤:

  1. brew tap heroku/brew && brew install heroku

或 Ubuntu

sudo snap install --classic heroku

于 2019-03-10T23:59:10.553 回答
6

尝试 npm install -g heroku任何平台。

于 2019-11-16T13:28:58.857 回答
5

当您按照文档在 linux 中安装 heroku 时,使用

sudo snap install heroku --classic

它会在里面安装heroku,/snap/bin/heroku 但是当你在终端中输入命令时,它会查看/usr/bin/目录,一个简单的解决方案是创建一个符号链接

sudo ln -s  /snap/bin/heroku /usr/bin/heroku

之后,您可以heroku在终端中运行该命令。

于 2020-02-09T15:50:57.353 回答
4

首先安装heroku:

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

之后像@Garrett 那样为二进制文件添加一个符号链接:

sudo ln -s /usr/local/heroku/bin/heroku /usr/bin/heroku
于 2014-11-20T22:20:11.350 回答
1

使用我从Heroku 页面上的 Heroku 的 Rails 4.x 入门下载的 .pkg 文件安装 Heroku Toolbelt 后,我​​得到了.pkg 文件heroku command not found message。我的/usr/local/heroku/bin文件夹确实存在。

我可以通过访问https://toolbelt.heroku.com并从该站点下载相同的 .pkg 文件并重新安装它来解决此问题。注意,我没有卸载之前的包。

于 2014-12-10T15:02:06.173 回答
1

导出快照目录

export PATH=$PATH:/snap/bin 
于 2021-09-02T18:02:21.170 回答
0

Brew 安装在 macOS 中不起作用?

对我来说brew tap heroku/brew && brew install heroku没有在 macOS 中工作。
所以我尝试了独立下载。
这是对我有用的命令

curl https://cli-assets.heroku.com/install.sh | sh
于 2021-01-18T05:26:16.200 回答
0

运行后,wget -0- wget https://toolbelt.heroku.com/install-ubuntu.sh | sh您可能会收到以下警告:

WARNING: The following packages cannot be authenticated!

heroku heroku-toolbelt

如果发生这种情况,运行这个apt-get install -y --force-yes heroku-toolbelt

我已经用 sudo 运行了所有命令,但我不知道它是否有所作为。感谢这个答案

于 2016-11-27T12:13:35.253 回答
0

纱线用

如果要部署backendor server,转到backendorserver文件夹,请使用 -

yarn global add heroku

要部署frontendor client,请转到frontendorclient文件夹并使用相同的 cmd。

对于 npm

转到folder您要部署和使用的相应npm i -g heroku

于 2021-12-08T11:50:57.440 回答