在 Windows 上安装多个版本的 Node.js,而不使用适用于 Windows 的 NVM

404*_*und 7 windows node.js nvm nvm-windows

我无法找到有关如何在不使用 NVM 的情况下在同一台计算机上安装两个版本的 Node.js (例如 v10 和 v14)的任何问题/答案。我无法使用 windows-nvm,因为它需要管理员权限,而且我正在以标准用户身份使用公司笔记本电脑。

我需要能够安装多个不同版本的 Node.js,因为同一公司下的不同项目需要使用不同版本的 Node.js。

是否只能卸载已安装的版本并每次安装新版本?有什么方法可以在C:\Program Files\node10下拥有 v10 ,在C:\Program Files\node14下拥有 v14吗?

需要明确的是,管理员愿意授予我特定的权限或安装完成此操作所需的任何软件。我们尝试使用名为 RunAsTool 的工具来尝试让我以管理员身份运行 NVM,但这由于其限制而不起作用。

另一种选择是授予我 NVM 运行所需的任何文件和目录的管理员权限,但我找不到这些文件/文件夹的列表。

第三种选择是简单地安装两个不同的版本,但是当您安装新版本时,以前的版本会被删除,即使它安装在C:\Program Files\node16等不寻常的路径下。

Ric*_*h N 4

我认为没有简单的方法可以做到这一点。一般来说,要让 Node 在 Windows 上运行,您需要两件事:其中包含可执行文件的 NodeJS 文件夹(默认情况下为 c:\Program Files\NodeJS),以及位于系统路径上任何其他节点路径之前的该路径。

不幸的是,写入 c:\Program Files 和更改系统路径都需要管理员权限。

然而,有一个有点笨拙的解决方法。总体思路是将 nodejs 文件夹放在您具有写入权限的位置,将系统路径指向它,它应该运行。然后您可以通过替换文件夹来切换版本而无需管理员权限。去做这个:

  • 使用管理员安装您要使用的第一个版本。将 c:\Program Files\nodejs 文件夹复制到新安装时不会被删除的位置:如果是版本 10,则为 c:\nodejsbackups\v10\nodejs。
  • 安装您要使用的第二个版本,并将 nodejs 文件复制到同一位置,例如 c:\nodejsbackups\v14\nodejs。
  • 还将其复制到您将运行它并且具有写入权限的位置,如果您在 c: 驱动器上具有写入权限,则为 c:\nodejs,如果没有,则将其复制到您的用户配置文件的某个位置。
  • 仍然具有管理员权限,编辑系统路径环境变量(而不是用户路径)。找到 c:\Program Files\nodejs 条目并将其删除。添加 c:\nodejs 条目。或者只是编辑它。
  • 我发现为了让 Visual Studio 节点应用程序正常工作,我还必须使用控制面板/程序和功能卸载原始节点。

现在启动命令提示符并执行操作,node --versionnpm --version应该会看到第二个版本正在运行。

要切换版本,无需管理员删除 c:\nodejs,然后将第一个版本从 c:\nodejsbackups\v10\nodejs 复制到那里。 重新启动命令提示符,发出相同的命令,您应该看到第一个版本现在正在运行。

这似乎适用于一些非常有限的测试,但我认为您需要测试它是否适合您的用例。可能有一些程序(例如 Visual Studio)假设节点位于 c:\Program Files 而不使用路径。最后,请求管理员权限可能会更好。