我试图使用NodeJS构建一个LDAP客户机,代码如下:
var ldap = require('ldapjs');
var client = ldap.createClient({
url: 'ldap://10.11.4.130:389',
});但是,当我试图运行时,会出现以下错误:
module.js:340
throw err;
^
Error: Cannot find module 'ldapjs'
at Function.Module._resolveFilename (module.js:338:15)
at Function.Module._load (module.js:280:25)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at Object.<anonymous> (/home/elias/workspace/TestJS/app.js:64:12)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Function.Module.runMain (module.js:497:10)ldapjs是通过npm和npm install ldapjs安装的。
[root@localhost ~]# npm ls
/root
├── async@0.9.0
├─┬ express@4.8.6
│ ├─┬ accepts@1.0.7
│ │ ├── mime-types@1.0.2
│ │ └── negotiator@0.4.7
[...] other modules
└─┬ ldapjs@0.7.1 <-----
├── asn1@0.2.1
├── assert-plus@0.1.5
├─┬ bunyan@0.22.1
│ └── mv@0.0.5
├── dtrace-provider@0.2.8
├─┬ nopt@2.1.1
│ └── abbrev@1.0.5
└─┬ pooling@0.4.6
├── once@1.3.0
└─┬ vasync@1.4.0
├─┬ jsprim@0.3.0
│ ├── extsprintf@1.0.0
│ ├── json-schema@0.2.2
│ └── verror@1.3.3
└─┬ verror@1.1.0
└── extsprintf@1.0.0
[root@localhost ~]# which node
/bin/node
[root@localhost ~]# which npm
/bin/npm
[root@localhost ~]# node -v
v0.10.30
[root@localhost ~]# npm -v
1.3.6怎么了?
发布于 2014-10-09 21:26:23
看起来您的脚本在/home/elias/workspace/TestJS中,但是您正在从/root运行npm ls,所以看起来您将模块安装到了错误的位置。尝试从/home/elias/workspace/TestJS中执行/home/elias/workspace/TestJS。
模块是在本地安装的,通常安装在当前工作目录的子目录下(除非cwd的任何父目录中已经有node_modules )。
发布于 2016-01-15 20:03:03
npm安装ldapjs将有效。另外,如果您正在使用git,并且npm安装ldapjs最初无法工作,请尝试使用git干净的-fdx删除所有已安装的包,然后执行npm安装(如果ldapjs没有添加到您的package.json中),那么npm安装ldapjs。
https://stackoverflow.com/questions/26288073
复制相似问题