解决linux下node.js全局模块找不到的问题

(编辑:jimmy 日期: 2024/11/21 浏览:2)

今天在在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全局模块找不到的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

一句话新闻
高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。