以前,我v0.10.46
在ec2服务器上安装了节点版本。对于最近的项目,我决定尝试pm2并使用来安装pm2
npm install pm2 -g
。
但是,pm2 start index.js
由于该项目使用带有箭头功能和let关键字的ES6语法,因此出错了。
因此,我使用nvm将节点版本更新为最新的v6.9.1,该版本也与我们在本地(Windows)上开发时所使用的版本相同。
但是,pm2 start index.js再次出错,并显示相同的错误:
pm2 show index
提示nodejs版本仍未更新。我删除了旧的nodejs版本,再次安装了pm2,仍然无济于事。
我也尝试使用其他方法,方法是:
pm2 start index.js --interpreter=~/.nvm/versions/node/v6.9.1/bin/node
强制pm2使用节点的最新安装版本。每次尝试都会给我相同版本的nodejs带来的相同错误。为什么Pm2不采用最新版本的node并坚持使用0.10.46?
如果有帮助:
which node ~/.nvm/versions/node/v6.9.1/bin/node which pm2 ~/.nvm/versions/node/v6.9.1/bin/pm2
另外,v0.10.46
未使用nvm安装。
编辑:
这是正在运行的pm2守护程序,使用ps -ef | grep pm2
:
请注意,ec2-user是登录用户,我也尝试过以root用户登录。我还以root用户身份安装了运行节点v6.9.1和pm2的nvm,但没有成功。我犯了同样的错误。