“nvm use 16.13.0”将返回此错误“退出状态 145:目录不为空。”

Joh*_*ohn 34 node.js nvm gulp

我有 2 个版本的 node.js ,如下:-

Your environment has been set up for using Node.js 17.1.0 (x64) and npm.

C:\Windows\System32>nvm list

    16.13.0
    8.16.2
Run Code Online (Sandbox Code Playgroud)

但是当我尝试使用第一个版本时,我收到此错误:-

C:\Windows\System32>nvm use 8.16.2
node v8.16.2 (64-bit) is not installed.
Run Code Online (Sandbox Code Playgroud)

当我尝试使用第二个版本时,我得到了这个:-

C:\Windows\System32>nvm use 16.13.0
exit status 145: The directory is not empty.
Run Code Online (Sandbox Code Playgroud)

那么发生了什么?谢谢

小智 105

如果是 Windows 机器,请转到 C:\Program Files\nodejs。然后将该文件夹重命名为 C:\Program Files\nodejsx。之后请检查“nvm use vvv”

  • 非常感谢它对我很有用,我这两天都在研究node.js的版本,但在EOD时没有得出任何结论。bcz 从一开始我就在 Linux 上工作,这是我第一次必须使用 Windows 操作系统。它帮了我很大的忙,一件小事让我的努力工作变成了聪明的工作,再次非常感谢你。 (2认同)

小智 28

我只是通过从“设置”->“应用程序”菜单卸载 Node.js 来修复它。根据https://github.com/coreybutler/nvm-windows/pull/615 pull request,nvm 无法更改版本,因为它与正常安装的 Node.js 版本冲突。尝试从“应用程序设置”菜单中删除 Node.js。


小智 15

当这种情况发生时:

C:\Windows\System32>nvm use 16.13.0
exit status 145: The directory is not empty.
Run Code Online (Sandbox Code Playgroud)

只需确保 nodejs 文件夹为空,检查C:\Program Files\nodejsC:\Program Files (x86)\nodejs,否则删除内容。然后重试nvm use XXXX (xxxx是版本)