我的本地环境遇到一些问题。
我正在使用:
- 自制程序 (1.1.4)
- fish shell (2.4)
- 版本管理器 (2.1.0)
- 节点
- npm
以上所有内容最初都是通过自制软件安装的。
问题:
- 无法运行任何全局安装的模块。
- 我无法更新 npm 版本。
我经常使用的节点版本是 0.10.48 和 6.9.2 - 但主要是 4.6.2。
我在fish中创建了一些别名,以便能够运行全局模块。不过,我更愿意解决根本原因,而不是继续使用更多创可贴。
额外信息:
~> npm config get prefix
/Users/me/.npm-packages
~> npm bin
/Users/me/node_modules/.bin
当我尝试更新 npm 时会发生什么:
~> npm install -g npm@3
/Users/me/.npm-packages/bin/npm -> /Users/me/.npm-packages/lib/node_modules/npm/bin/npm-cli.js
npm@3.10.10 /Users/me/.npm-packages/lib/node_modules/npm
~> npm -v
2.15.9
当我尝试调用全局模块时:
~> gulp
fish: Unknown command 'gulp'
我为修复全局模块所做的尝试:
~> cat ~/.config/fish/config.fish
set fish_user_paths /Users/me/.npm-packages
ls ~/.config/fish/functions
bower.fish ember.fish pm2.fish
~> cat ~/.config/fish/functions/bower.fish
function bower
/Users/me/.npm-packages/bin/bower $argv;
end
如果您能提供任何帮助,我们将不胜感激!我已经尝试解决这个问题有一段时间了,但没有成功!
最佳答案
您可以使用已安装的 npm 模块。您只需将 npm 全局路径添加到 shell 即可。为此,我运行了:
$ npm config get prefix
// Output: /usr/local/Cellar/node/9.2.1
然后,添加到我的fish/config.fish
:
set PATH /usr/local/Cellar/node/9.2.1/bin $PATH
这是Github related link这帮助我解决了问题。
关于npm - Fish shell 和全局 npm 模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41138547/