【问题标题】:Changing from existing nodejs installation through apt to NVM从现有的 nodejs 安装通过 apt 更改为 NVM
【发布时间】:2018-07-11 13:23:41
【问题描述】:

我在 Ubuntu 18.04 上,通过 apt 安装了现有的 NodeJS。 (当前版本为9.11.1) 我想卸载它并切换到 NVM 而不破坏其他依赖项(如纱线),最好是我的整个系统。我需要干净利落地做这些,我不想冒险错过任何一步。你能帮帮我吗?

【问题讨论】:

  • Yarn 是一个全局安装的依赖/node_module,因此更改为 nvm 将需要重新安装它们。只需记下所有全局安装的 node_modules (npm ls -g --depth 0),然后通过 apt 卸载 node,安装 nvm,安装所需的 node 版本并重新安装所有全局包。不要忘记相应地更新您的$Path。根据是否在某些地方设置了当前 yarn/npm 的绝对路径,这些也必须更新
  • 在 Ubuntu 中还有其他方法吗?我来自mac,然后我只运行brew uninstall --ignore-dependencies node 然后brew unlink node。在这两个步骤之后,我通过 NVM 安装了节点。纱线没有被破坏。
  • 好的,我可能需要指定我的声明。当然,这取决于您指定用于存储全局 npm 依赖项的目录。如果 brew 安装的节点和 nvm 安装的节点相同,则不需要重新安装。默认情况下,nvm 为每个节点版本使用单独的全局包目录,因为全局包可能需要不同的依赖项。不知道你所说的“另一种方式”是什么意思。您也许可以安排它重新使用 apt node 安装的全局包,但我不建议这样做,因为最好重新安装它们。

标签: node.js ubuntu nvm


【解决方案1】:

(这里是 nvm 维护者)

您可以在系统node 上安装nvm,而不会丢失任何内容(尽管nodenpm 本身将被nvm 管理的node 遮蔽)。

另外,您可以运行npm ls -g --depth=0 来获取全局模块列表,然后您可以在安装并激活nvm 管理的node 后重新安装这些模块。

如果您安装 yarn 的方式与 npm install -g yarn 不同,那么卸载系统 node/npm 应该不会影响它。

【讨论】:

  • 是的,感谢您的帮助和信息。我认为sudo apt removepurge 一样工作,它会破坏依赖关系,但我试过了,它奏效了。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-06-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-07-28
  • 2012-04-26
相关资源
最近更新 更多