我对node版本,linux用户切换这部分知识好混乱啊
是这样,最近项目上线 本来本地用的nvm use的7.8 心想上线还不是照搬,结果线上(PM2环境)node就是不支持async特性,但是看来看去nvm use的就是7.8,用尽力气只好用pm2的配置文件指定了一个7.8版本的node。ok一切都好了 但是后来因为要sudo权限切了root用户,后来发现nvm就没了,这个迷迷糊糊的倒也差不多能理解,但是总的来说这部分还是很混乱啊,node版本到底是跟什么走,为什么node -v 明明是7.8可是pm2跑起来的时候却没有7.6就该支持的特性(因此怀疑实际上用了什么默认的其他node版本),再就是那么以后换了用户就会换node版本吗,还是说只是nvm丢失,node版本是像js作用域链那样有层级关系吗??
求大神扔点技术文献的链接看看
1 回复
为什么node -v 明明是7.8可是pm2跑起来的时候却没有7.6就该支持的特性(因此怀疑实际上用了什么默认的其他node版本)
这个看你的 pm2 用的是哪个 node (的可执行文件)
再就是那么以后换了用户就会换node版本吗
完全有可能啊,每个用户的“环境变量”可能不同。
其实不用这么麻烦的,搞不明白,那就记得一点就好了——使用绝对路径,任何时候。