将npm (通过nvm)升级到8.5.5之后,npm命令不再工作:
例如,npm --verbose ls webpack在以下方面失败:
npm verb stack C:\Users\marti\AppData\Roaming\nvm\v16.15.0\node_modules\npm\node_modules\@npmcli\arborist:1
npm verb stack ../../workspaces/arborist
npm verb stack ^
npm verb stack
npm verb stack SyntaxError: Unexpected token '.'
npm verb stack at Object.compileFunction (node:vm:352:18)
npm verb stack at wrapSafe (node:internal/modules/cjs/loader:1033:15)
npm verb stack at Module._compile (node:internal/modules/cjs/loader:1069:27)
npm verb stack at Object.Module._extensions..js (node:internal/modules/cjs/loader:1159:10)
npm verb stack at Module.load (node:internal/modules/cjs/loader:981:32)
npm verb stack at Function.Module._load (node:internal/modules/cjs/loader:822:12)
npm verb stack at Module.require (node:internal/modules/cjs/loader:1005:19)
npm verb stack at require (node:internal/modules/cjs/helpers:102:18)
npm verb stack at Object.<anonymous> (C:\Users\marti\AppData\Roaming\nvm\v16.15.0\node_modules\npm\lib\commands\ls.js:7:18)
npm verb stack at Module._compile (node:internal/modules/cjs/loader:1105:14)
npm verb cwd D:\dev\xxx
npm verb Windows_NT 10.0.19043
npm verb argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "--verbose" "ls" "webpack"
npm verb node v16.15.0
npm verb npm v8.5.5
npm ERR! Unexpected token '.'注意:当我使用nvm并切换回节点16.12 (NPMVersion8.1.0)时,工作正常。
详细信息
错误引用的文件。
C:\Users\xxx\AppData\Roaming\nvm\v16.15.0\node_modules\npm\node_modules\@npmcli\arborist只包含以下内容(我猜这是无效的js ):
../../workspaces/arborist我尝试过的(但没有成功)
解决办法
C:\Users\xxx\AppData\Roaming\nvm\v16.15.0\node_modules\npm\node_modules\@npmcli\arboristC:\Users\xxx\AppData\Roaming\nvm\v16.12.0\node_modules\npm\node_modules\@npmcli\arborist\你知道我做错了什么吗?或者这只是npm 8.5.5中的一个bug?
发布于 2022-05-17 09:37:24
这对我起了作用:
nvm更新为1.1.9版本(旧安装版本为1.1.7)16.15.0 (现在aborist是一个目录),这些命令按照预期工作。https://stackoverflow.com/questions/72271131
复制相似问题