一、Node.js的下载安装
这一步比较简单,打开官网Node.js (nodejs.org),下载LTS版本,选择合适的安装目录安装即可。
安装好后打开CMD命令行,查看安装是否成功。
C:>Users>wangzhihuang>node -v v14.17.5 C:>Users>wangzhihuang>npm -v 6.14.14
二、NPM依赖包下载路径设置
为什么要设置?原因很简单,第一是为了更好管理我们的磁盘空间,第二是可以很方便找到依赖包的存放路径。
在Node安装目录下新建两个文件夹,node_cache和node_global,从文件夹名称我们知道文件夹的作用。
接着,在命令行中设置全局包下载路径和缓存路径
npm config set prefix "D:\ProgramFiles\NodeJS\node_global" npm config set cache "D:\ProgramFiles\NodeJS\node_cache"
这时如果我们打开用户目录“C:\Users\wangzhihuang”会发现改目录下多了".npmrc"隐藏文件,这就是NPM的配置文件
prefix=D:\ProgramFile\NodeJS\node_global cache=D:\ProgramFile\NodeJS\node_cache
到这一步还没有结束,还需要配置环境变量,将Node JS安装目录下的node_global、node_module添加到PATH中即可。
三、NPM INSTALL ERROR 4048
在完成前面的步骤后,我们使用npm下载依赖包时会发现依然存在错误。
PS C:\Users\wangzhihuang\OneDrive\Coding\Echarts> npm install echarts -S npm ERR! code EPERM npm ERR! syscall open npm ERR! path D:\ProgramFile\NodeJS\node_cache\_cacache\tmp\495c736f npm ERR! errno -4048 npm ERR! Error: EPERM: operation not permitted, open ‘D:\ProgramFile\NodeJS\node_cache\_cacache\tmp\495c736f‘ npm ERR! [OperationalError: EPERM: operation not permitted, open ‘D:\ProgramFile\NodeJS\node_cache\_cacache\tmp\495c736f‘] { npm ERR! cause: [Error: EPERM: operation not permitted, open ‘D:\ProgramFile\NodeJS\node_cache\_cacache\tmp\495c736f‘] { npm ERR! code: ‘EPERM‘, npm ERR! syscall: ‘open‘, npm ERR! path: ‘D:\\ProgramFile\\NodeJS\\node_cache\\_cacache\\tmp\\495c736f‘ npm ERR! }, npm ERR! isOperational: true, npm ERR! errno: -4048, npm ERR! code: ‘EPERM‘, npm ERR! syscall: ‘open‘, npm ERR! path: ‘D:\\ProgramFile\\NodeJS\\node_cache\\_cacache\\tmp\\495c736f‘ npm ERR! } npm ERR! npm ERR! The operation was rejected by your operating system. npm ERR! It‘s 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.
通过提示信息我们可以知道,是用户权限问题导致文件无法写入,因此我们要对当前用户操作NodeJS的目录的权限进行提升。
有两种解决办法,一是用管理员权限打开CMD或PowerShell窗口
二是对NodeJS目录中node_cache和node_global的用户使用权限进行设置,如下图所示。
设置好后我们再进行测试,发现能成功下载,问题到此解决。
PS C:\Users\wangzhihuang\Desktop> npm install express -g + express@4.17.1 added 50 packages from 37 contributors in 4.46s