Node-redis: web_server.js:找不到模块“redis”

创建于 2010-11-09  ·  19评论  ·  资料来源: NodeRedis/node-redis

节点 v0.3
redis v2.2 antirez git

wfm 大多数 test.js

在 resolveModuleFilename (node.js:265:13)
在 loadModule (node.js:231:20)
在要求 (node.js:291:14)
在对象。(/Users/jaymini/node_redis/examples/web_server.js:4:20)
在 Module._compile (node.js:348:23)
在 Object..js (node.js:356:12)
在 Module.load (node.js:279:25)
在阵列。(node.js:370:24)
在 EventEmitter._tickCallback (node.js:42:22)
在 node.js:634:9

question

最有用的评论

现在一切正常!

没有意识到 npm 在 /local/node 之前使用了 /usr/local/node
不得不 mv,然后 hunkydory .. 非常感谢 webserver.js 和其他人...
如此多的节点项目使用 jquery 和任何其他库来处理....

最好的事物!

所有19条评论

您需要以某种方式将库安装到您的路径中。 我使用 npm。 所以从顶层 node_redis 目录,做:

npm install

它将使用本地 git repo 作为源而不是 npm 服务器的版本来安装 node_redis。

抱歉有点昏暗,但是什么library
npm 有各种权限问题,
毫无疑问要重新审视..
阅读:api.html#modules
但我不清楚要链接到哪个 redis 文件?

花时间弄清楚 npm 是值得的。 许多节点库只能从 npm 正常工作。

在您让 npm 工作之前,您可以修改示例以执行以下操作:

require("../index");

代替

require("redis");

结果:权限被拒绝

在 ~/local/bin 中成功安装 npm

按照您的指示:
mac- mini:node_redis jaymini$ ~/local/bin/npm install
npm info 如果它以 ok 结尾就有效
使用[email protected]npm 信息
使用[email protected]npm 信息
npm info preinstall [email protected]
npm 信息安装[email protected]
npm info postinstall [email protected]
npm info predeactivate [email protected]
npm 信息停用[email protected]
npm info postdeactivate [email protected]
npm info preactivate [email protected]
npm info activate [email protected]
npm info postactivate [email protected]
npm info build 成功: [email protected]
好的
mac- mini:node_redis jaymini$

但:
mac- mini:examples jaymini$ ~/local/bin/node web_server.js

node.js:63
扔e;
^
错误:找不到模块“redis”
在 loadModule (node.js:275:15)
在要求 (node.js:411:14)
在对象。(/Users/jaymini/node_redis/examples/web_server.js:4:20)
在 Module._compile (node.js:462:23)
在 Module._loadScriptSync (node.js:469:10)
在 Module.loadSync (node.js:338:12)
在 Object.runMain (node.js:522:24)
在阵列。(node.js:756:12)
在 EventEmitter._tickCallback (node.js:55:22)
在 node.js:772:9
mac- mini:examples jaymini$

redis 方面正在逃避我......

mac-mini:~jaymini$~/local/bin/npm 安装 redis
npm info 如果它以 ok 结尾就有效
使用[email protected]npm 信息
使用[email protected]npm 信息
npm info preinstall [email protected]
npm info install [email protected]
npm info postinstall [email protected]
npm info predeactivate [email protected]
npm 信息停用[email protected]
npm info postdeactivate [email protected]
npm info preactivate [email protected]
npm info activate [email protected]
npm info postactivate [email protected]
npm info build 成功: [email protected]
好的
mac-mini:~ jaymini$ cd node_redis/

当我尝试从 redis 中安装它时:

mac- mini:redis jaymini$ ~/local/bin/npm install
npm info 如果它以 ok 结尾就有效
使用[email protected]npm 信息
使用[email protected]npm 信息
错误! 安装时出错。
npm 错误! 错误:ENOENT,没有这样的文件或目录“package.json”
错误! 在 node.js:634:9
错误! 在http://github.com/isaacs/npm/issues报告此_整个_日志
npm 错误! 或通过电子邮件将其发送至[email protected]
错误! 仅在推特上发布一小部分错误将无济于事。
npm 不行
mac- mini:redis jaymini$ cd ~

这看起来更像是一个 npm 问题。 您经常可以在 freenode IRC 频道 #node.js 上找到 isaacs。 这通常是解决 npm 问题的最快方法。

如果他不在,向 npm google 群组地址发送电子邮件是另一种获得支持的方式。

正如他所说,文件夹中没有 package.json:
https://github.com/isaacs/npm/issues/issue/353

但我不知道接下来要做什么...
尝试不同的 redis 包?

嗯,这很奇怪。 git repo 中肯定有 package.json 文件:

mjr:~/work/node_redis (master)$ ls -l
total 200
-rw-r--r--   1 mjr  staff  15613 Nov  2 15:06 README.md
-rw-r--r--   1 mjr  staff   2078 Sep 20 09:41 bench.js
-rw-r--r--@  1 mjr  staff    568 Nov  3 12:46 changelog.md
drwxr-xr-x  12 mjr  staff    408 Nov  3 14:03 examples
-rw-r--r--@  1 mjr  staff  28257 Nov  8 16:37 index.js
-rw-r--r--@  1 mjr  staff   5421 Nov  2 15:18 multi_bench.js
-rw-r--r--@  1 mjr  staff    490 Nov  3 12:44 package.json
-rw-r--r--@  1 mjr  staff  33788 Nov  3 12:41 test.js
drwxr-xr-x   4 mjr  staff    136 Sep 24 13:15 tests

并且:

https://github.com/mranney/node_redis/blob/master/package.json

是的,但那不是在 node_redis 中,不是在 redis 中吗?

即根据问题描述:找不到模块“redis”
大概需要redis模块?

项目和 repo 被称为“node_redis”,但在 npm 中被称为“redis”。 这意味着您需要“redis”和“npm install redis”。 如果你想从 git 安装,你可以查看名为“node_redis”的 repo。 从“node_redis”目录中,您可以执行“npm install”,它应该正确安装。

顺便说一句,你使用自制软件的 node 和 npm 吗? 自制软件安装似乎真的让 npm 感到困惑。

没有自制软件,但被难住了,你会理解我对 redis 的困惑,
好的,所以 package.json 是红鲱鱼,与 redis 无关,
但鉴于 mac- mini:node_redis jaymini$ ~/local/bin/npm install
报好的,大约一个小时前,为什么找不到模块?

是的,这就是为什么我认为这是一个 npm 问题。 关于您机器上的 npm 的某些内容令人困惑。 我建议删除 npm 和 node 的所有痕迹,然后重新安装。 或者你可以弄清楚你的计算机上的 npm 到底是什么被破坏了,但重新开始可能更容易。

安装和测试时它应该如下所示:

mjr:~/work/node_redis (master)$ npm install
npm info 如果它以 ok 结尾就有效
使用[email protected]npm 信息
使用[email protected]npm 信息
npm info preinstall [email protected]
npm info install [email protected]
npm info postinstall [email protected]
npm info predeactivate [email protected]
npm 信息停用[email protected]
npm info postdeactivate [email protected]
npm info preactivate [email protected]
npm info activate [email protected]
npm info postactivate [email protected]
npm info build 成功: [email protected]
好的

mjr:~/work/node_redis (master)$ 节点

要求(“redis”);
{ 调试模式:假,
RedisClient: { [Function: RedisClient] super_: [Function: EventEmitter] },
createClient: [功能],
打印:[功能] }

我应该补充一点,如果您不进行更改,您可能根本不应该安装 git 版本。 只需全新安装 node 和 npm,然后执行以下操作:

npm install redis

你应该能够要求(“redis”)。

好吧,现在已经很晚了,所以在早上..

将删除并重新开始!

可能想 fork node_redis,

再次发送

嗯不错。 祝你好运。

现在一切正常!

没有意识到 npm 在 /local/node 之前使用了 /usr/local/node
不得不 mv,然后 hunkydory .. 非常感谢 webserver.js 和其他人...
如此多的节点项目使用 jquery 和任何其他库来处理....

最好的事物!

在我输入命令节点server.js 制作本地主机后,我刺入命令后它立即出现。
找不到“redis-server”模块

-------------------------------------启动服务器----------- -----------------------------------------
2019-10-12T08:09:36.456Z - 错误:证书文件或密钥文件丢失,回退到非 SSL 模式
2019-10-12T08:09:36.460Z - 错误:要创建它们,只需从 shell 运行以下命令:sh ./scripts/generate-ssl-certs.sh

内部/模块/cjs/loader.js:783
抛出错误;
^

错误:找不到模块“redis-server”
需要堆栈:

  • /etc/magoware/config/lib/redis.js
  • /etc/magoware/modules/mago/server/policies/mago.server.policy.js
  • /etc/magoware/config/lib/express.js
  • /etc/magoware/config/lib/app.js
  • /etc/magoware/server.js
    在 Function.Module._resolveFilename (internal/modules/cjs/loader.js:780:15)
    在 Function.Module._load (internal/modules/cjs/loader.js:685:27)
    在 Module.require (internal/modules/cjs/loader.js:838:19)
    在要求 (internal/modules/cjs/helpers.js:74:18)
    在对象。(/etc/magoware/config/lib/redis.js:2:19)
    在 Module._compile (internal/modules/cjs/loader.js:945:30)
    在 Object.Module._extensions..js (internal/modules/cjs/loader.js:962:10)
    在 Module.load (internal/modules/cjs/loader.js:798:32)
    在 Function.Module._load (internal/modules/cjs/loader.js:711:12)
    在 Module.require (internal/modules/cjs/loader.js:838:19)
    在要求 (internal/modules/cjs/helpers.js:74:18)
    在对象。(/etc/magoware/modules/mago/server/policies/mago.server.policy.js:6:13)
    在 Module._compile (internal/modules/cjs/loader.js:945:30)
    在 Object.Module._extensions..js (internal/modules/cjs/loader.js:962:10)
    在 Module.load (internal/modules/cjs/loader.js:798:32)
    在 Function.Module._load (internal/modules/cjs/loader.js:711:12) {
    代码:'MODULE_NOT_FOUND',
    要求堆栈:[
    '/etc/magoware/config/lib/redis.js',
    '/etc/magoware/modules/mago/server/policies/mago.server.policy.js',
    '/etc/magoware/config/lib/express.js',
    '/etc/magoware/config/lib/app.js',
    '/etc/magoware/server.js'
    ]
    }
此页面是否有帮助?
0 / 5 - 0 等级

相关问题

Alchemystic picture Alchemystic  ·  6评论

shmendo picture shmendo  ·  6评论

strumwolf picture strumwolf  ·  4评论

jackycchen picture jackycchen  ·  4评论

twappworld picture twappworld  ·  7评论