首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >PM2流程管理器不是显示每个项目package.json版本的实际版本,而是显示NVM版本号。

PM2流程管理器不是显示每个项目package.json版本的实际版本,而是显示NVM版本号。
EN

Stack Overflow用户
提问于 2021-08-12 08:13:42
回答 1查看 465关注 0票数 0

我正在MacOS上运行MacOS列表,而这些项目节点正在运行nvm托管节点版本。根据对versioning列的期望,它应该分别根据节点进程的package.json版本号显示各自的节点进程版本。

但它显示的是nvm (节点版本管理器)的版本。这很奇怪。任何人都有线索,或者这是来自PM2的bug?这也发生在一对正在MacOS上工作的队友身上。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-09-06 17:33:50

我终于理解了pm2的工作逻辑。当前安装节点由nvm管理,pm2在节点版本中全局安装。

当使用以下样式启动上述进程时:

代码语言:javascript
运行
复制
{
    ...
    script: 'npm',
    args: 'run start:auth'
    ...
}

在pm2 config.js (启动脚本)中,它间接要求PM2引用nvm文件夹,在那里使用npm。在这样的情况下,当我们通过调用pm2 info auth检查进程时,它显示了这一行,这给了我们提示,pm2将读取package.json驻留在~/.nvm文件夹中,从而成为nvm的版本。

因此,神秘的是解决了

注意: PM2将从repository root中读取第一个可用的package.json,或者在script path中的某个可用位置(例如,当我们执行pm2 info <process>时)。也就是说,在正常情况下,我们只在生产环境中使用pm2,我们倾向于使用它来启动实际的*.js脚本,并且它将正确地处理package.json,不会出现任何问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68753840

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档