我面临此处发布的问题,并通知原因可能是nodejs的版本。
如下所示,节点版本很好。
$node -v
v7.2.0
Run Code Online (Sandbox Code Playgroud)
但这给了我一个非正常的root用户版本,供crontab进程使用。
$sudo su
$node -v
v0.10.42
Run Code Online (Sandbox Code Playgroud)
我尝试过$n rm 0.10.42或者$n 7.2.0很多次都无法解决问题
有人可以帮忙吗?我希望crontab进程使用正确版本的nodejs。
我通过删除原始节点并复制新版本来解决问题。
$sudo su
$node -v
v0.10.42 //old version
$which node
/usr/bin/node
$mv /usr/bin/node /usr/bin/node.bk //rename the old node
$node -v
bash: /usr/bin/node: No such file or directory
$n bin 7.2.0 //find out the path of the new node installed
/usr/local/n/versions/node/7.2.0/bin/node
$cp /usr/local/n/versions/node/7.2.0/bin/node /usr/bin/node //replace
$node -v
v7.2.0 //success
Run Code Online (Sandbox Code Playgroud)
我发现我可以简单地将正确的which node路径添加到 $PATH。
$which node
/usr/local/bin/node
$sudo su
$which node
/usr/bin/node
$export PATH=$PATH:/usr/local/bin
$node -v
v7.2.0
Run Code Online (Sandbox Code Playgroud)