安装nodejs出现过的问题

安装nodejs出现过的问题

在安装node.js和进行相关配置时,可能有如下报错:

C:Userslenovo>npm install -g express
npm ERR! code EPERM
npm ERR! syscall mkdir
npm ERR! path E:Program Files
odejs
ode_cache\_cacache
npm ERR! errno -4048
npm ERR! Error: EPERM: operation not permitted, mkdir E:Program Files
odejs
ode_cache\_cacache
npm ERR!  [OperationalError: EPERM: operation not permitted, mkdir E:Program Files
odejs
ode_cache\_cacache] {
npm ERR!   cause: [Error: EPERM: operation not permitted, mkdir E:Program Files
odejs
ode_cache\_cacache] {
npm ERR!     errno: -4048,
npm ERR!     code: EPERM,
npm ERR!     syscall: mkdir,
npm ERR!     path: E:\Program Files\nodejs\node_cache\_cacache
npm ERR!   },
npm ERR!   isOperational: true,
npm ERR!   errno: -4048,
npm ERR!   code: EPERM,
npm ERR!   syscall: mkdir,
npm ERR!   path: E:\Program Files\nodejs\node_cache\_cacache
npm ERR! }
npm ERR!
npm ERR! The operation was rejected by your operating system.
npm ERR! Its possible that the file was already in use (by a text editor or antivirus),
npm ERR! or that you lack permissions to access it.
npm ERR!
npm ERR! If you believe this might be a permissions issue, please double-check the
npm ERR! permissions of the file and its containing directories, or try running
npm ERR! the command again as root/Administrator.

笔者浏览网上其他人的解决建议,主要有以下两种解决方法,但让人觉得不可靠:

  1. 删除C盘下的npmrc文件;
  2. 控制台输入:
npm cache clean --force’

笔者尝试以上命令后,总结以下可解决的想法:


上面两个方法我用都没有效果,即便成功下载依旧会在默认的C盘文件夹下安装,错误提示的指示其实和权限问题有关,删除“.npmrc”文件夹和使用“npm cache clean --force”命令在这里没什么作用。

笔者参考,设置好用户和系统的环境变量。然后依次用到以下两个命令: (注:每个人node js安装位置不一样,因人而异更改引号内的路径,node_global文件夹和node_cache文件夹不需要手动创建)

npm config set prefix "E:Program Files
odejs
ode_global"
npm config set cache "E:Program Files
odejs
ode_cache"
//注意:建议用管理员方式打开命令提示符执行;

然后,在你安装的nodejs目录下会自动创建node_global文件夹,并在"C:Userslenovo" (注:此为笔者电脑的路径) 下自动生成".npmrc"文件,文件内容如下


然后,执行下载命令(比如下载express):

C:WINDOWSsystem32>npm install -g express
+ express@4.17.1
updated 1 package in 10.247s
//注意:权限不足,用管理员方式打开命令提示符执行

最后,文件会成功在所设置的下载目录下安装,如下图:


补充:其实有个一劳永逸的办法: 就是安装之前创建一个nodejs文件夹,索引路径上不能有中文,在nodejs 中再手动创建node_global和node_cache两个文件夹,安装时直接指定自己创建的nodejs文件,然后再指定那两个子文件夹的路径,基本万事大吉

文中有不当处,还望予以指点

经验分享 程序员 微信小程序 职场和发展