如何让我的节点脚本在`{execution directory} / node_modules`中搜索模块?

时间:2014-09-11 07:08:31

标签: node.js bash shell npm

Long story短:

我的个人bin文件夹中有一个脚本,位于〜/ dotfiles / bin / myscript 中,由export PATH=~/dotfiles/bin:$PATH添加到$ PATH。

myscript 的当前内容是

#! /usr/bin/env node

var prompt = require('prompt');

prompt全局和本地安装。但是require('prompt')说了

Cannot find module 'prompt'

我发现,require()通常会搜索

中的模块
  • ./ node_modules(local)
  • {prefix} / lib / node_modules(global)

我在npm config get prefix找到了我的{前缀}。

所以我可以在~/dotfiles/bin/node_modules中安装软件包,或者在我的脚本中使用require('/usr/local/lib/node_modules/prompt');。两者都有效,但对我来说无法解决。

所以问题是: 如何让我的节点脚本在{executing directory}/node_modules中搜索模块? 为什么require()无法在/usr/local/lib/node_modules/中搜索?

0 个答案:

没有答案