首页 > 解决方案 > 我无法在 npm nodejs 中安装 nodemon

问题描述

我无法安装 nodemon 它有 npm 问题

Vus-MacBook-Air:nodejs vuvantuu$ sudo npm install -g nodemon
npm WARN checkPermissions Missing write access to /usr/local/lib/node_modules/nodemon
npm ERR! 路径 /usr/local/lib/node_modules/nodemon
npm 错误!代码 ENOENT
npm 错误!errno -2
npm 错误!系统调用访问
npm ERR!enoent ENOENT:没有这样的文件或目录,访问 '/usr/local/lib/node_modules/nodemon'
npm ERR!enoent 这与 npm 找不到文件有关。
npm 错误!恩恩

npm 错误!可以在以下位置找到此运行的完整日志:
npm ERR!/Users/vuvantuu/.npm/_logs/2019-08-08T07_07_43_043Z-debug.log

标签: node.js

解决方案


正如错误所说 - 您没有对该/usr/local/lib/node_modules文件夹的写入权限。

消除此错误的最简单方法是通过运行命令sudo

sudo npm i -g nodemon


root但是,如果您出于任何原因(例如安全性)不想通过用户运行它,您可以为给定用户全局安装软件包。

  1. 为全局包创建目录
mkdir "${HOME}/.npm-packages"
  1. 告诉npm在哪里存储全局安装的包
npm config set prefix "${HOME}/.npm-packages"
  1. 确保npm将找到已安装的二进制文件和手册页

将以下内容添加到您的.bashrc/ .zshrc

NPM_PACKAGES="${HOME}/.npm-packages"

export PATH="$NPM_PACKAGES/bin:$PATH"

# Unset manpath so we can inherit from /etc/manpath via the `manpath` command
unset MANPATH # delete if you already modified MANPATH elsewhere in your config
export MANPATH="$NPM_PACKAGES/share/man:$(manpath)"

注意:如果您运行的是 macOS,该.bashrc文件可能还不存在,终端将从另一个文件获取其环境参数,例如.profile.bash_profile. 这些文件也驻留在用户的主文件夹中。在这种情况下,只需向它们添加以下行将指示终端也加载.bashrc文件:

source ~/.bashrc

推荐阅读