【问题标题】:NVM - How to install same Node version but different global versions of NPM using NVMNVM - 如何使用 NVM 安装相同的 Node 版本但不同的全局版本的 NPM
【发布时间】:2022-11-10 04:06:44
【问题描述】:

我有两个项目:

  • 项目 A:节点 16.10.0 NPM 7.24.2
  • 项目 B:节点 16.10.0 NPM 8.10.0

两者都需要相同版本的 Node,但需要不同版本的 NPM。我想知道它是否可以通过 NVM 实现。

我能够做到(在苹果系统) 但它相当 hacky

nvm use v16.10.0
npm -v      # 7.24.2
which node  # /Users/useriko/.nvm/versions/node/v16.10.0/bin/node

# duplicate v16.10.0 folder
ditto ~/.nvm/versions/node/v16.10.0 ~/.nvm/versions/node/v16.10.0_npm8

nvm use v16.10.0_npm8
npm i -g npm@8.10.0

nvm alias v16_npm7 v16.10.0
nvm alias v16_npm8 v16.10.0_npm8

现在我可以在它们之间切换

  • nvm use v16_npm7 用于 npm 7.24.2
  • nvm use v16_npm8 用于 npm 8.10.0

有没有更好/替代的解决方案?

【问题讨论】:

    标签: node.js npm nvm


    【解决方案1】:

    更好的解决方案是在每个项目的 .nvmrc 文件中定义 npm 版本。

    有一个 nvm 功能请求要求这样做:https://github.com/nvm-sh/nvm/issues/964

    同时,建议的解决方法是在您的 package.json 中定义一个 preinstall 脚本,安装您需要的 npm 版本。

    【讨论】:

      猜你喜欢
      • 2022-12-17
      • 2012-04-03
      • 1970-01-01
      • 1970-01-01
      • 2011-12-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多