Nvm-windows: 安装节点 8.10 后无法立即升级 npm

创建于 2018-09-06  ·  1评论  ·  资料来源: coreybutler/nvm-windows

我知道 Windows 7 不受官方支持,但这感觉不像是 Windows 7 问题。
我不确定它是什么感觉,但这就是我来这里寻找的。

看起来'gentle-fs'不想将它需要的文件rm rm。

我的环境

  • [x] Windows 7 或更低版本(由于 EOL 不真正支持 - 请参阅 wiki 了解详细信息)

我正在使用 NVM4W 版本:

  • [x] 1.1.7

我已经...

  • [x] 阅读自述文件以了解 npm 陷阱和防病毒问题。
  • [x] 查看了wiki以确保我的问题尚未得到解决。
  • [x] 已验证我正在使用具有管理权限的帐户。
  • [x] 搜索了问题(打开和关闭)以确保这不是重复的。
  • [x] 确保这不是关于如何在 Windows 上使用 NVM 的问题,因为gitter用于问题和评论。

我的问题与(仅检查适用的问题)有关:

  • [x] 标准 shell 环境(终端/powershell)

预期行为

npm install -g npm会起作用。

实际行为

它没有:

C:\Users\nannp>npm install -g npm
npm ERR! path C:\Program Files\nodejs\npm.cmd
npm ERR! code EEXIST
npm ERR! Refusing to delete C:\Program Files\nodejs\npm.cmd: is outside C:\Program Files\nodejs\node_modules\npm and not a link
npm ERR! File exists: C:\Program Files\nodejs\npm.cmd
npm ERR! Move it away, and try again.

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\nannp\AppData\Roaming\npm-cache\_logs\2018-09-06T13_02_02_287Z-debug.log

提到的日志文件以:

3446 verbose unlock done using C:\Users\nannp\AppData\Roaming\npm-cache\_locks\staging-dfd8fbf9c1feea0f.lock for C:\Program Files\nodejs\node_modules\.staging
3447 verbose stack Error: Refusing to delete C:\Program Files\nodejs\npm.cmd: is outside C:\Program Files\nodejs\node_modules\npm and not a link
3447 verbose stack     at clobberFail (C:\Users\nannp\AppData\Roaming\nvm\v8.10.0\node_modules\npm\node_modules\gentle-fs\lib\rm.js:121:12)
3447 verbose stack     at isSafeToRm (C:\Users\nannp\AppData\Roaming\nvm\v8.10.0\node_modules\npm\node_modules\gentle-fs\lib\rm.js:114:15)
3447 verbose stack     at C:\Users\nannp\AppData\Roaming\nvm\v8.10.0\node_modules\npm\node_modules\gentle-fs\lib\rm.js:54:5
3447 verbose stack     at LOOP (C:\Users\nannp\AppData\Roaming\nvm\v8.10.0\node_modules\npm\node_modules\slide\lib\chain.js:7:26)
3447 verbose stack     at C:\Users\nannp\AppData\Roaming\nvm\v8.10.0\node_modules\npm\node_modules\slide\lib\chain.js:18:7
3447 verbose stack     at C:\Users\nannp\AppData\Roaming\nvm\v8.10.0\node_modules\npm\node_modules\gentle-fs\lib\rm.js:180:7
3447 verbose stack     at C:\Users\nannp\AppData\Roaming\nvm\v8.10.0\node_modules\npm\node_modules\iferr\index.js:13:50
3447 verbose stack     at _readAllLinks (C:\Users\nannp\AppData\Roaming\nvm\v8.10.0\node_modules\npm\node_modules\gentle-fs\lib\rm.js:215:28)
3447 verbose stack     at C:\Users\nannp\AppData\Roaming\nvm\v8.10.0\node_modules\npm\node_modules\iferr\index.js:13:50
3447 verbose stack     at resolveSymlink (C:\Users\nannp\AppData\Roaming\nvm\v8.10.0\node_modules\npm\node_modules\gentle-fs\lib\rm.js:226:22)
3447 verbose stack     at _readAllLinks (C:\Users\nannp\AppData\Roaming\nvm\v8.10.0\node_modules\npm\node_modules\gentle-fs\lib\rm.js:217:5)
3447 verbose stack     at readAllLinks (C:\Users\nannp\AppData\Roaming\nvm\v8.10.0\node_modules\npm\node_modules\gentle-fs\lib\rm.js:212:3)
3447 verbose stack     at C:\Users\nannp\AppData\Roaming\nvm\v8.10.0\node_modules\npm\node_modules\gentle-fs\lib\rm.js:179:5
3447 verbose stack     at C:\Users\nannp\AppData\Roaming\nvm\v8.10.0\node_modules\npm\node_modules\iferr\index.js:13:50
3447 verbose stack     at cb (C:\Users\nannp\AppData\Roaming\nvm\v8.10.0\node_modules\npm\node_modules\slide\lib\async-map.js:47:24)
3447 verbose stack     at C:\Users\nannp\AppData\Roaming\nvm\v8.10.0\node_modules\npm\node_modules\gentle-fs\lib\rm.js:153:16
3448 verbose cwd C:\Users\nannp\
3449 verbose Windows_NT 6.1.7601
3450 verbose argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "install" "-g" "npm"
3451 verbose node v8.10.0
3452 verbose npm  v5.6.0
3453 error path C:\Program Files\nodejs\npm.cmd
3454 error code EEXIST
3455 error Refusing to delete C:\Program Files\nodejs\npm.cmd: is outside C:\Program Files\nodejs\node_modules\npm and not a link
3456 error File exists: C:\Program Files\nodejs\npm.cmd
3457 error Move it away, and try again.
3458 verbose exit [ 1, true ]

将“npm.cmd”移开并没有真正帮助。 然后我根本无法运行 npm。

重现问题的步骤:

通过安装程序在 Windows 7 上全新安装了 nvm。 接受所有默认值。
打开一个新的 CMD 窗口。 冉:
nvm install 8.10

  • 都好

npm install -g npm

  • 都不好,如上。

最有用的评论

抱歉 - 今天我的搜索技巧让我失望了...
提交后,我做了更多的谷歌搜索,找到了另一个线程: https ://github.com/coreybutler/nvm-windows/issues/300

感谢@Jeff-Lewis 这个简单的宝石:
由于这是一个 Windows 问题,请在 .bat 文件中保存并运行以下命令:
或者可能一次手动运行一个命令,因为如果一个步骤失败,以下步骤可能会变得更糟......

pushd %ProgramFiles%\nodejs
del npm npm.cmd
move node_modules\npm node_modules\npm2
call node node_modules\npm2\bin\npm-cli.js i npm<strong i="11">@latest</strong> -g
rmdir /S /Q node_modules\npm2
popd
pause

完美地将 npm 升级到 V6.4.1

其他人有时会觉得这个 npm 世界是纸牌屋???

>所有评论

抱歉 - 今天我的搜索技巧让我失望了...
提交后,我做了更多的谷歌搜索,找到了另一个线程: https ://github.com/coreybutler/nvm-windows/issues/300

感谢@Jeff-Lewis 这个简单的宝石:
由于这是一个 Windows 问题,请在 .bat 文件中保存并运行以下命令:
或者可能一次手动运行一个命令,因为如果一个步骤失败,以下步骤可能会变得更糟......

pushd %ProgramFiles%\nodejs
del npm npm.cmd
move node_modules\npm node_modules\npm2
call node node_modules\npm2\bin\npm-cli.js i npm<strong i="11">@latest</strong> -g
rmdir /S /Q node_modules\npm2
popd
pause

完美地将 npm 升级到 V6.4.1

其他人有时会觉得这个 npm 世界是纸牌屋???

此页面是否有帮助?
0 / 5 - 0 等级

相关问题

keylowgee picture keylowgee  ·  6评论

hsali picture hsali  ·  4评论

AllainPL picture AllainPL  ·  7评论

tomByrer picture tomByrer  ·  4评论

eliavmaman picture eliavmaman  ·  6评论