Javascript 节点JS CLI+;节点库

Javascript 节点JS CLI+;节点库,javascript,node.js,command-line-interface,commonjs,node-modules,Javascript,Node.js,Command Line Interface,Commonjs,Node Modules,我正在创建一个包含CLI的节点库 完整(但不长)代码位于 因为我正在积极地开发它,所以我在开发过程中使用了npm链接 给我带来麻烦的部分似乎在cli.js文件中。当我通过var reltoabs=require('reltoabs')节点包含该模块时,会抛出一个错误,指出reltoabs模块不存在,但它在节点\u模块中。你知道我该怎么做吗?如果你试图要求的模块不是本机模块,并且不是以路径标识符开头的,那么Node将首先查找当前模块的父目录并附加/Node\u modules。节点将在该目录中查找

我正在创建一个包含CLI的节点库

完整(但不长)代码位于

因为我正在积极地开发它,所以我在开发过程中使用了
npm链接


给我带来麻烦的部分似乎在
cli.js
文件中。当我通过
var reltoabs=require('reltoabs')
节点包含该模块时,会抛出一个错误,指出
reltoabs
模块不存在,但它在节点\u模块中。你知道我该怎么做吗?

如果你试图要求的模块不是本机模块,并且不是以路径标识符开头的,那么Node将首先查找当前模块的父目录并附加
/Node\u modules
。节点将在该目录中查找,如果模块不在那里,则它将向上迭代文件系统树,直到到达根目录

假设您是从模块文件夹开发的,您需要执行以下搜索:

/module/path/lib/node_modules/reltoabs
/path/lib/node_modules/reltoabs
/lib/node_modules/reltoabs
这并不能解释您所遇到的错误,但为了避免类似于您的错误,请在可能的情况下相对地引用文件:

var reltoabs = require('./reltoabs')

Try:var reltoabs=require('app/reltoabs');实际上,这似乎解决了问题!非常感谢!