我正在尝试使用Mac终端中的“firebase”命令来使用“firebase deploy --only functions”部署firebase云功能。我刚刚将firebase-functions和firebase-tools更新到版本3.18.4时使用了这个命令,但是现在我每次尝试使用'firebase'关键字来运行命令时都会说-bash: firebase: command not found
。当我运行npm -g list
时,我看到我在该列表中有firebase,firebase-tools等等。
我已经尝试运行'npm install -g firebase-tools`但它仍然无效。我也尝试了this question推荐的产品
但仍然没有工作。任何建议都会很棒,谢谢
首先,我运行了npm get prefix
,它应该输出类似/Users/username/.npm-packages
的东西。然后我不得不将以下内容添加到我的$ PATH变量中
export PATH="/Users/username/.npm-packages/bin:$PATH"
注意额外的/bin
(在npm得到前缀的结果之后)
我还添加了export PATH="/usr/local/share/npm/bin:/usr/local/bin:/usr/local/sbin:~/bin:$PATH$
然后,您必须通过运行source ~/.bash_profile
激活对bash_profile的更改
一旦我这样做,firebase命令再次被全局识别
对于那些使用yarn
而不是npm
来管理全局包的人来说,yarn
似乎将二进制文件作为符号链接放在隔离目录中。在我的情况下,我做了yarn bin
寻找二进制文件的位置,原来它是$HOME/.config/yarn/global/node_modules/.bin
。所以,我把它设置为.bashrc
。现在它正在运作。