繁体   English   中英

npm install -g不适用于任何东西

[英]npm install -g doesn't work for anything

我正在尝试在终端中使用以下命令使用npm安装gatsbyjs:npm install -g gatsby-cli。 我收到警告和很多错误:

npm WARN checkPermissions Missing write access to /usr/local/lib/node_modules
npm ERR! path /usr/local/lib/node_modules
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall access
npm ERR! Error: EACCES: permission denied, access '/usr/local/lib/node_modules'
npm ERR!  { Error: EACCES: permission denied, access '/usr/local/lib/node_modules'
npm ERR!   stack: 'Error: EACCES: permission denied, access \'/usr/local/lib/node_modules\'',
npm ERR!   errno: -13,
npm ERR!   code: 'EACCES',
npm ERR!   syscall: 'access',
npm ERR!   path: '/usr/local/lib/node_modules' }
npm ERR! 
npm ERR! Please try running this command again as root/Administrator.

npm ERR! A complete log of this run can be found in:
npm ERR!     /Users/simanshrestha/.npm/_logs/2018-07-07T22_48_08_615Z-debug.log

我尝试使用以下方法重新安装Node.js并更新npm:npm install npm @ latest -g,但是只有一堆检查权限警告和以下错误:

npm ERR! path /usr/local/lib/node_modules/npm/node_modules/cacache/node_modules/ssri
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall access
npm ERR! Error: EACCES: permission denied, access '/usr/local/lib/node_modules/npm/node_modules/cacache/node_modules/ssri'
npm ERR!  { Error: EACCES: permission denied, access '/usr/local/lib/node_modules/npm/node_modules/cacache/node_modules/ssri'
npm ERR!   stack: 'Error: EACCES: permission denied, access \'/usr/local/lib/node_modules/npm/node_modules/cacache/node_modules/ssri\'',
npm ERR!   errno: -13,
npm ERR!   code: 'EACCES',
npm ERR!   syscall: 'access',
npm ERR!   path: '/usr/local/lib/node_modules/npm/node_modules/cacache/node_modules/ssri' }
npm ERR! 
npm ERR! Please try running this command again as root/Administrator.

npm ERR! A complete log of this run can be found in:
npm ERR!     /Users/simanshrestha/.npm/_logs/2018-07-07T22_49_59_092Z-debug.log

我一直在尝试解决权限错误,但是卡住了(我真的是新手)。

编辑:我不想使用sudo,因为我已经看到它可能使多个论坛搞砸了。

您应该以管理员身份运行npm install -g。

正如控制台所说。

对于您的问题,有3种可能的解决方案,这基本上是没有root用户权限才能将模块安装到root node_modules目录:

  1. 运行sudo npm i -g package@latest 这样可以解决您的问题,但每次都会要求输入root密码。

  2. 使用npm config set prefix更改此处概述的默认全局模块文件夹

  3. 安装并使用nvm来管理nodenpm ,它开箱即用,并在本地用户中正确设置了文件夹结构。 因此,不需要额外的权限或弄乱配置前缀。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM