所有npm命令都给出相同的错误(ENOENT)

Los*_*ary 8 javascript windows node.js npm

我正在使用Windows 8.1 x64进行所有更新.

我使用的是nodejs 8.9.1 - 我在命令"npm -v"上发生错误.
所以我卸载了这个版本并安装了8.9.3.它给了我同样的错误命令.
然后我卸载了8.9.3并使用这个答案清理所有路径; /sf/answers/1449798731/ 然后安装新版本9.3.0 ...

但是,我在所有npm命令中都遇到了同样的错误.
我错过了什么?我怎么解决这个问题?

C:\Users\UserName\Desktop>npm -v
Error: spawn C:\Program Files\nodejs\node.exe ENOENT
    at _errnoException (util.js:999:13)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:201:19)
    at onErrorNT (internal/child_process.js:389:16)
    at process._tickCallback (internal/process/next_tick.js:152:19)
    at Function.Module.runMain (module.js:703:11)
    at startup (bootstrap_node.js:194:16)
    at bootstrap_node.js:618:3
C:\Program Files\nodejs\node_modules\npm\lib\npm.js:51
      throw new Error('npm.load() required')
      ^

Error: npm.load() required
    at Object.get (C:\Program Files\nodejs\node_modules\npm\lib\npm.js:51:13)
    at process.errorHandler (C:\Program Files\nodejs\node_modules\npm\lib\utils\error-handler.js:205:18)
    at process.emit (events.js:159:13)
    at process._fatalException (bootstrap_node.js:387:26)
5.5.1

events.js:136
      throw er; // Unhandled 'error' event
      ^

Error: spawn C:\Program Files\nodejs\node.exe ENOENT
    at _errnoException (util.js:999:13)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:201:19)
    at onErrorNT (internal/child_process.js:389:16)
    at process._tickCallback (internal/process/next_tick.js:152:19)
    at Function.Module.runMain (module.js:703:11)
    at startup (bootstrap_node.js:194:16)
    at bootstrap_node.js:618:3
Run Code Online (Sandbox Code Playgroud)

更新:
每次我卸载nodejs,清理/删除文件夹并尝试这些版本;
- node-v9.3.0-x64无法正常工作
- node-v8.9.3-x64无法正常工作
- node-v8.9.1-x64无法正常工作
- node-v8.9.0-x64无法正常工作
- node-v7.10.0-x64显示版本数字也是一个小错误.
这是输出;

C:\Users\UserName\Desktop>npm -v
5.6.0

events.js:163
      throw er; // Unhandled 'error' event
      ^

Error: spawn C:\Program Files\nodejs\node.exe ENOENT
    at exports._errnoException (util.js:1050:11)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:193:32)
    at onErrorNT (internal/child_process.js:367:16)
    at _combinedTickCallback (internal/process/next_tick.js:80:11)
    at process._tickCallback (internal/process/next_tick.js:104:9)
    at Module.runMain (module.js:607:11)
    at run (bootstrap_node.js:427:7)
    at startup (bootstrap_node.js:151:9)
    at bootstrap_node.js:542:3
Run Code Online (Sandbox Code Playgroud)

更新:
我卸载了Avg防病毒保护并安装了node-v6.12.3-x64.msi.我还有问题,一个例子; 我无法运行命令; Windows 8.1 x64上的节点v6.12.3

最后更新
感谢所有答案(直到这个日期:10.02.2018 03:30 PM GTM + 3)
(我已经完成了一些与vm windows的工作,直到这个日期,但现在我有一个悲伤的消息.)
我跑出去了选项和我还有很多工作要做npm包.所以,我已经格式化了我的机器并替换为Windows 10 Enterprise x64.我现在不能尝试新的答案,但这是我所学到的金点; 如果您有像ci-build(jenkins等)这样的关键任务机器,或者如果您没有多台计算机(并且vm不是一个选项),请不时完全备份您的驱动器,因为您永远不会知道您的计算机软件(如node-npm)可能会产生一些有趣的错误.这就是我学到的,只是说......

fjo*_*joe 0

选择 Node.js 版本时需要考虑以下几点。

标记为 LTS(长期支持)的版本是他们支持的版本。

您可以在此处查看完整的版本列表,注意 LTS 列。查看各自打包的V8npm版本也很有趣。

  • Node 9.* 没有正式的 LTS 版本。
  • Node 8.* 于 2017 年 10 月 31 日(3 个月前)正式进入 LTS。
    • 我个人也遇到过这样的问题。
  • Node 7.* 从未作为 LTS 正式发布。
  • Node 6.* 有 2 年的官方 LTS 版本,并且他们将继续支持它。
    • 最新版本于 2018 年 1 月 2 日发布。

鉴于此信息,我可能建议您尝试经过验证的长期支持版本 6.*

如果这有效,那么可能会推迟版本 8.*,直到更多问题得到解决。

node其他人对您有关或 的环境变量的问题发表了评论npm。这显然不是问题,因为命令被识别并运行(但它们出错)。

另外,我建议您遵循此完整卸载指南:如何从 Windows 中完全删除 node.js