在Ubuntu上,如果我安装了一个模块:
npm install nodemon -g
我在nodemon
$path
命令
在Mac OSX上,nodemon
不在$path
...
任何线索?
更新:没有/usr/local/bin
,我也尝试了与npm install nodemon -g
相同的结果
答案 0 :(得分:6)
尝试全局安装:
sudo npm install nodemon -g
如果这也不起作用,请将/usr/local/bin
添加到$PATH
。
答案 1 :(得分:3)
我的Mac上遇到了同样的问题。我能够通过全局安装(不需要sudo)然后将/usr/local/share/npm/bin
添加到我的路径来解决这个问题。将它放在bash配置文件中很容易,因此它会在启动时添加。首先,vim~ / .bash_profile,然后:
export PATH=${PATH}:/usr/local/share/npm/bin
然后一切都按预期工作。
顺便说一句,当我回显$ PATH时,/ usr / local / bin就在那里,所以它必然是npm如何在Mac上运行的问题(也就是说,Mac的全局安装位置与Linux不同)。
答案 2 :(得分:1)
如果你正在使用fish shell,并通过自制软件安装节点,请将其添加到~/.config/fish/config.fish
set PATH /usr/local/Cellar/node/6.6.0/bin/ $PATH
答案 3 :(得分:0)
您安装后更新了终端路径吗?尝试关闭并重新打开终端。你在使用nvm(节点版本管理器)吗?如果是这样,二进制文件将类似于
Users/maxl/.nvm/v0.10.4/bin
的输出是什么
echo $PATH
答案 4 :(得分:0)
我被困在这一段时间了。然后我发现我正在处理的项目有自己的RVM gemset。我尝试安装的节点模块是npm install -g grunt-contrib-compass
。
结果是,当我打开一个新的终端窗口并运行which compass
时,我会看到路径,太棒了!但是在cd到我的项目目录后,路径将会消失?
事实证明,NPM会将宝石安装到RVM(默认)gemset!我尝试重新安装没有-g标志,没有运气。
我的解决方案很快rvm --force gemset delete appname
,只是使用了项目的默认值。可能不理想,但它奏效了。希望这个提示有助于其他人。
答案 5 :(得分:0)
最终对我有用的是使用nvm,然后执行:
nvm install stable
nvm use stable
nvm alias default stable
我意识到在运行npm config get prefix
后看到它不正确。
答案 6 :(得分:0)
与之或与可执行文件的二进制或符号链接可能在路径/Users/[username]/private/node_modules/.bin
例如:
ls -l /Users/[username]/private/node_modules/.bin/json-server lrwxr-xr-x 1 [username] group 29 Oct 9 14:29 /Users/[username]/private/node_modules/.bin/json-server -> ../json-server/lib/cli/bin.js
将PATH="$PATH:/Users/[username]]/private/node_modules/.bin/"
行添加到~/.bash_profile
文件并运行source /Users/[username]]/.bash_profile
应该会导致您在Ubuntu中遇到相同的行为