node.js – 如何在Node中导入全局模块?我得到“错误:找不到模块”?

我试图在Mac OSX Lion上设置Node。这一切似乎工作确定,但我似乎不能从我的全局模块文件夹导入任何模块。我得到的错误,

Error: Cannot find module <module>

如果我运行这个:node -e require.paths,我得到的响应是:

[ '/usr/local/lib/node_modules','/Users/Me/.node_modules','/Users/Me/.node_libraries','/usr/local/Cellar/node/0.4.12/lib/node' ]

这是正确的,我的模块确实安装在/usr/local/lib / node_modules。当我尝试运行一个脚本,但是,我得到这个:

Error: Cannot find module 'socket.io'
    at Function._resolveFilename (module.js:326:11)
    at Function._load (module.js:271:25)
    at require (module.js:355:19)
    at Object.<anonymous> (/Users/Me/node/server.js:2:10)
    at Module._compile (module.js:411:26)
    at Object..js (module.js:417:10)
    at Module.load (module.js:343:31)
    at Function._load (module.js:302:12)
    at Array.<anonymous> (module.js:430:10)
    at EventEmitter._tickCallback (node.js:126:26)

我的.bash_profile看起来像这样:

export PATH=/usr/local/mysql/bin:$PATH
export NODE_PATH=/usr/local/lib/node_modules
export DYLD_LIBRARY_PATH="$DYLD_LIBRARY_PATH:/usr/local/mysql/lib/"

真的会赞赏一些帮助,我不知道为什么我不能导入任何库。

解决方法

如果您使用npm> = 1.0,则可以使用npm link< global-package>以创建到已全局安装的软件包的本地链接。 (注意:操作系统必须支持符号链接。)

然而,这不是没有它的问题。

npm link is a development tool. It’s awesome for managing packages on your local development box. But deploying with npm link is basically asking for problems,since it makes it super easy to update things without realizing it.

或者,您可以在本地以及全局安装软件包。

有关其他信息,请参阅

> https://nodejs.org/en/blog/npm/npm-1-0-link/
> https://nodejs.org/en/blog/npm/npm-1-0-global-vs-local-installation/

相关文章

这篇文章主要介绍“基于nodejs的ssh2怎么实现自动化部署”的...
本文小编为大家详细介绍“nodejs怎么实现目录不存在自动创建...
这篇“如何把nodejs数据传到前端”文章的知识点大部分人都不...
本文小编为大家详细介绍“nodejs如何实现定时删除文件”,内...
这篇文章主要讲解了“nodejs安装模块卡住不动怎么解决”,文...
今天小编给大家分享一下如何检测nodejs有没有安装成功的相关...