我该如何修复 NPM 总是说 unexpected token =

How can I fix NPM which always says unexpected token =

我的机器自动更新后,NPM 不再工作

OS: Ubuntu 20.04.3 LTS
npm -v: 8.1.4
node -v: v10.19.0

每次我尝试使用 NPM 启动某些东西时,它都会给我相同的错误消息:

*@*:~$ npm help
npm WARN npm npm does not support Node.js v10.19.0
npm WARN npm You should probably upgrade to a newer version of node as we
npm WARN npm can't make any promises that npm will work with this version.
npm WARN npm You can find the latest version at https://nodejs.org/
npm ERR! Unexpected token =

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/*/.npm/_logs/2021-11-19T13_44_25_087Z-debug.log

错误日志包含以下内容:

0 verbose stack /usr/local/lib/node_modules/npm/lib/commands/help.js:16
30 verbose stack   static description = 'Get help on npm'
30 verbose stack                      ^
30 verbose stack
30 verbose stack SyntaxError: Unexpected token =
30 verbose stack     at Module._compile (internal/modules/cjs/loader.js:723:23)
30 verbose stack     at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
30 verbose stack     at Module.load (internal/modules/cjs/loader.js:653:32)
30 verbose stack     at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
30 verbose stack     at Function.Module._load (internal/modules/cjs/loader.js:585:3)
30 verbose stack     at Module.require (internal/modules/cjs/loader.js:692:17)
30 verbose stack     at require (internal/modules/cjs/helpers.js:25:18)
30 verbose stack     at Npm.cmd (/usr/local/lib/node_modules/npm/lib/npm.js:97:18)
31 verbose cwd /home/*
32 verbose Linux 5.11.0-40-generic
33 verbose argv "/usr/bin/node" "/usr/local/bin/npm" "help"
34 verbose node v10.19.0
35 verbose npm  v8.1.4
36 error Unexpected token =
37 verbose exit 1

升级您的节点版本,您使用的是最新的 npm 版本,它不支持旧版本的节点

既然你在 ubuntu 我建议你使用 nvm

sudo apt-get install nvm

nvm install 16
nvm use 16

npm 已损坏,因为它会忽略 PATH,并且会忽略调用运行时,而是使用任意运行时。

sudo which node
/usr/local/bin/node

.

sudo /usr/local/bin/node --version
v17.1.0

.

sudo /usr/local/bin/node /usr/local/bin/npm install -g node@latest
...
npm ERR! npm WARN npm npm does not support Node.js v10.19.0
...

删除分发版本可能是一种解决方法。

我是这样解决的:

安装 nvm

sudo apt install curl 
curl https://raw.githubusercontent.com/creationix/nvm/master/install.sh | bash
source ~/.profile
nvm install node 

Source