我只是跟着本指南更新npm (因为我的摄像头模块不工作),然后运行
npm install -g npm但是现在我的npm安装似乎完全坏了。如果我只是打字
npm或
npm update我得到了
/usr/local/lib/node_modules/npm/bin/npm-cli.js:79让通知程序=要求(“更新通知程序”)({pkg})^ SyntaxError:不支持外部严格模式的块作用域声明(let、const、函数、类)
我试过了
sudo apt-get remove npm
sudo apt-get install npm但是重新安装没有帮助。
我认为我的节点版本需要从v4.8.2升级,但我认为只有npm才能实现?
发布于 2018-05-13 13:38:18
您可能已经安装了两次npm,一个在/usr/local/bin中,另一个在/usr/bin中。
首先,您可以尝试删除通过升级npm安装的npm模块。试着运行以下命令:
rm -r /usr/local/lib/node_modules/npm/usr/bin/npm uninstall npm一旦您有了正在运行的npm版本,在升级npm之前安装一个最新版本的节点。然后,删除linux发行版的版本。
如果第一种解决方案不起作用,另一种方法是安装节点的最新版本(当然不使用npm )
curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -
sudo apt-get install -y nodejs发布于 2018-12-10 10:54:49
(对centos的解决方案.我认为它也适用于ubuntu):
为了彻底清理我的centos机器,我还做了以下操作--我的用户是"centos“,我的家是/ home /centos:
sudo rm -rf /usr/local/bin/npm
sudo rm -rf /usr/local/bin/npx
sudo rm -rf /usr/lib/node_modules/
sudo rm -rf /usr/bin/npm
sudo rm -r /usr/local/lib/node_modules/
sudo rm -rf /usr/local/bin/node
sudo rm -rf /usr/bin/npm
sudo rm -rf /usr/lib/node_modules/
rm -rf /home/centos/.npm/
rm -rf /home/centos/node*
rm -rf /home/centos/.node-gyp/
sudo rm -rf /root/.npm/
sudo rm /usr/bin/node
sudo rm -rf /usr/local/include/node只有在此时,我才重新安装:
wget http://nodejs.org/dist/latest/node-v11.4.0-linux-x64.tar.gz
sudo tar --strip-components 1 -xzvf node-v* -C /usr/local事情又开始运作了:
node --version
v11.4.0
npm --version
6.4.1发布于 2019-04-26 17:22:38
对于那些使用谷歌发现这一点的人来说,你可能会被诱惑通过curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -安装,然后用sudo apt install nodejs安装。
然而,无论如何,我还是遇到了这个问题。请记住,npm@6放弃了对node@<=4的支持,这是其中的一个因素。如果您想确保所有的东西都安装在最新的、正确的版本中,我强烈建议通过nvm进行安装。
通过他们的GitHub上的nvm指令:您可以将安装脚本添加到
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.34.0/install.sh | bash然后就可以开始使用nvm了。您可能需要重新启动终端,所以安装之后,退出终端,重新启动它,并检查nvm是否与nvm --version一起安装。
如果一切顺利,您可以安装带有npm的任何特定版本的节点。编写时节点的最新稳定版本是10.15.3,所以
nvm install 10.15.3当然,如果您需要帮助,nvm --help有一个选项列表。
https://stackoverflow.com/questions/50316693
复制相似问题