尝试升级时收到“必须指向节点的已安装版本”

时间:2019-01-15 11:23:46

标签: node.js nvm

尝试使用任一版本升级我的Node版本时

nvm install v10.15.0 --reinstall-packages-from=8.9.4

nvm install lts/* --reinstall-packages-from=node

我收到以下错误:

If --reinstall-packages-from is provided, it must point to an installed version of node.

我还尝试将=node更改为指向我已安装节点的位置的路径,例如/usr/local/bin/node

我也尝试过不使用NVM方法,而是使用here提供的说明,但是我收到以下消息:

WARN tar EISDIR: illegal operation on a directory, open '/usr/local/lib/node_modules/.staging/n-3eb27508/.github' /usr/local/lib/node_modules/.staging
WARN tar EISDIR: illegal operation on a directory, open '/usr/local/lib/node_modules/.staging/n-3eb27508/bin'
npm ERR! path /usr/local/lib/node_modules/n/bin/n
npm ERR! code ENOENT
npm ERR! errno -2
npm ERR! syscall chmod
npm ERR! enoent ENOENT: no such file or directory, chmod '/usr/local/lib/node_modules/n/bin/n'
npm ERR! enoent This is related to npm not being able to find a file.
npm ERR! enoent

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

通过从Node JS网站上下载新版本的OSX安装程序并覆盖以前的版本即可解决此问题!

答案 1 :(得分:1)

在我的情况下,这是因为我是直接从Node.js网站上的安装程序安装Node的,并且第一次尝试使用npm对其进行更新时,出现权限错误,并指出使用nvm的解决方案。因此,就我而言,我认为该错误是因为nvm不了解我以前安装的Node。最终只是从我的Mac中完全删除了节点,npm和相关文件(按照How do I completely uninstall Node.js, and reinstall from beginning (Mac OS X)),而只是做了nvm install node