Windows安装PM2 注意事项与错误查改

Windows安装

1. 首先应确保 node 和 npm 已经安装:
Shell 复制代码
node -v #查看 node 版本
npm -v #查看 npm 版本

注意有时候即使npm安装了,但并没有进行配置环境变量,后面会将如何配置。

2. 尝试安装pm2到全局路径

运行以下命令对 PM2 进行全局安装:

bash 复制代码
npm install pm2 -g

会运行一会,如果正常输出应当是:

Shell 复制代码
C:\Users\Administrator>npm install pm2 -g

changed 138 packages in 4s

13 packages are looking for funding #不用管,表示进行捐赠
  run `npm fund` for details

也可能失败,输出:

Shell 复制代码
C:\Windows\system32>npm install pm2 -g
npm error code ECONNRESET
npm error syscall read
npm error errno ECONNRESET
npm error network Invalid response body while trying to fetch https://registry.npmjs.org/pm2: read ECONNRESET
npm error network This is a problem related to network connectivity.
npm error network In most cases you are behind a proxy or have bad network settings.
npm error network
npm error network If you are behind a proxy, please make sure that the
npm error network 'proxy' config is set properly.  See: 'npm help config'
npm error A complete log of this run can be found in: C:\Users\你的用户名\AppData\Local\npm-cache\_logs\xxx-debug-0.log

这种情况是网络问题,可以运行以下命令来使用npm淘宝源

bash 复制代码
   npm config set registry https://registry.npmmirror.com

然后再次进行安装命令。

3. 确认安装成功 & 配置npm环境变量
  1. 首先运行以下命令查看 PM2 是否已经全局安装:
bash 复制代码
   npm list -g pm2

正常输出为:

Shell 复制代码
C:\Users\Administrator>npm list -g pm2
D:\Program Files\nodejs\node_global #这里为nodejs的全局安装路径
`-- pm2@5.4.2

如果没有列出 PM2,表示全局安装没有成功,

Linux用户可以尝试使用管理员权限重新安装:

bash 复制代码
sudo npm install pm2 -g

在 Windows 系统上,使用管理员权限 运行命令提示符,然后执行:

bash 复制代码
npm install pm2 -g

注意要使用命令提示符,而不是PowerShell

  1. 然后运行以下命令查看安装的pm2版本
Shell 复制代码
   pm2 -v

正常会输出版本号(第一次输出会内容多一些,正常现象),但可能会报错:

shell 复制代码
C:\Windows\system32>pm2 -v
'pm2' 不是内部或外部命令,也不是可运行的程序
或批处理文件。

此时可以按照以下操作进行配置:

  1. 确认 npm 全局安装路径:
    检查 npm 全局包的安装路径是否在系统的 PATH 中。运行以下命令查看 npm 全局路径:
bash 复制代码
   npm config get prefix

它会返回一个路径,比如:

  • 在 Windows 上,通常是 C:\Users\你的用户名\AppData\Roaming\npm
  • 在 Linux/macOS 上,通常是 /usr/local

接着,检查这个路径是否已添加到系统的 PATH 环境变量中。

  1. 配置环境变量
  • Windows 上,右键点击"此电脑" -> "属性" -> "高级系统设置" -> "环境变量",然后在系统变量里找到 Path,编辑并确保全局 npm 安装路径(如 C:\Users\你的用户名\AppData\Roaming\npm)已在其中。
  • Linux/macOS 上,运行以下命令来查看 PATH 变量:
bash 复制代码
     echo $PATH
复制代码
 如果 npm 全局路径不在 `PATH` 中,添加它到 `.bashrc` 或 `.zshrc` 文件中。例如:
bash 复制代码
     export PATH=$PATH:/usr/local/bin
  1. 重新打开终端或命令提示符:

    在修改 PATH 或重新安装后,关闭并重新打开命令行窗口,确保新环境变量生效。

  2. 手动运行 PM2:

    如果仍然无法运行,可以尝试手动执行 PM2,使用完整的路径运行:

bash 复制代码
   $(npm config get prefix)/bin/pm2 -v

在 Windows 上:

bash 复制代码
   C:\Users\你的用户名\AppData\Roaming\npm\pm2 -v

5.可以使用以下命令清除缓存来更好地安装

shell 复制代码
   npm cache clean --force

通过这些步骤,你应该可以解决 pm2 命令无法识别的问题。

相关推荐
2301_773730311 小时前
系统编程—IPC进程间通信
网络·网络协议
sg_knight2 小时前
Nuxt 4 生产环境部署指南 (Node.js + Nginx)
运维·nginx·node.js·nuxt·ssr
代码游侠2 小时前
学习笔记——IPC(进程间通信)
linux·运维·网络·笔记·学习·算法
Henry Zhu1232 小时前
VPP中ACL源码详解第二篇:ACL数据平面处理
运维·服务器·网络·计算机网络
上河雨滴2 小时前
win11 环境下,有线网络识别问题bug
网络
老蒋新思维2 小时前
创客匠人推演:当知识IP成为“数字心智”的架构师——论下一代认知服务的形态
网络·人工智能·网络协议·tcp/ip·机器学习·创始人ip·创客匠人
逆流°只是风景-bjhxcc3 小时前
【网络】ipv4和ipv6的区别
网络
别动哪条鱼3 小时前
SDL 函数对各对象缓冲区的影响
网络·数据结构·ffmpeg
云计算练习生4 小时前
渗透测试行业术语扫盲(第十六篇)—— 红蓝对抗与演练类
网络·安全·网络安全·信息安全·渗透测试术语
快解析4 小时前
内网穿透快解析注册后添加配置端口教程
linux·服务器·网络