今天在在linux上用npm安装了pm2准备部署node项目,结果通过pm2命令启动项目的时候报pm2找不到,这很伤,以为pm2没有安装成功,但是在node安装目录下面的bin文件夹里面调用pm2却没问题。
/usr/local/node/node-v7.3.0-linux-x64/bin/pm2 list
类似这样调用pm2 list命令查看pm2启动的项目没有任何问题。
原来linux系统上通过npm全局安装了模块以后,不能像windos下面那样自动配置环境变量,需要自己动手配置。。。好吧,自己动手吧。。。
在linux上配置环境变量很简单,只需要修改 /etc/profile 文件就可以了,在profile文件最后写上node模块的目录就可以了。
export NODE_HOME=/usr/local/node/node-v7.3.0-linux-x64/bin export PATH=$NODE_HOME:$PATH
这里的NODE_HOME是我node.js的安装目录里面的bin目录,这样每次执行全局模块的命令就不需要写上完整的路径了。
注意,修改了环境变量之后需要注销再重新登录服务器才会生效,我是用的云服务器,直接退出系统再重新连接,然后修改的配置就生效了。
直接执行命令
pm2 list
完美运行。。。
以上这篇解决linux下node.js全局模块找不到的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。