npm模块安装但不可用?
我在一个应用程序中实现了一个npm模块(称为扳手),我总是在本地测试。这总是没有问题。然后我试图在我的服务器上安装扳手。
npm install wrench
按预期工作,但一旦涉及require("wrench")
,我收到以下错误:
> require("wrench")
Error: Cannot find module 'wrench'
at Function._resolveFilename (module.js:320:11)
at Function._load (module.js:266:25)
at require (module.js:348:19)
at [object Context]:1:1
at Interface.<anonymous> (repl.js:171:22)
at Interface.emit (events.js:64:17)
at Interface._onLine (readline.js:153:10)
at Interface._line (readline.js:408:8)
at Interface._ttyWrite (readline.js:585:14)
at ReadStream.<anonymous> (readline.js:73:12)
如果我运行npm ls
,我可以看到
[email protected]
这里有什么我想念的吗?
谢谢,
埃利亚斯
回答如下:我相信npm ls
会在npm上显示所有可用的软件包。要查看已安装的软件包,我认为您应该发布npm ls installed
。
我有:
alfred@alfred-laptop:~$ node -v
v0.4.1
alfred@alfred-laptop:~$ npm --version
0.2.17
我发出:
alfred@alfred-laptop:~$ npm install wrench
npm info it worked if it ends with ok
npm info using [email protected]
npm info using [email protected]
npm info fetch http://registry.npmjs/wrench/-/wrench-0.1.0.tgz
npm info calculating sha1 /home/alfred/local/lib/node/.npm/nvm/0.0.6/package/v0.4.1/lib/node/.npm/.cache/wrench/0.1.0/package.tgz
npm info shasum 07440ad670068e0e81c8126c4641d1ca73b83557
npm info preinstall [email protected]
npm info install [email protected]
npm info postinstall [email protected]
npm info preactivate [email protected]
npm info activate [email protected]
npm info postactivate [email protected]
npm info build Success: [email protected]
npm ok
alfred@alfred-laptop:~$ node
> require('wrench')
{ rmdirSyncRecursive: [Function],
copyDirSyncRecursive: [Function],
chmodSyncRecursive: [Function] }
>
我的建议是使用最新最好的npm和node.js,然后再试一次。