【问题标题】:Error installing socket.io安装 socket.io 时出错
【发布时间】:2013-11-24 13:36:00
【问题描述】:

在成功安装nodenmp 后,我正在尝试在windows(8) 中安装socket.io 包

但是以相同的方式安装socket.io (npm install socket.io) 我收到以下错误。 http://pastebin.com/EykjZ85X

Generating code
Finished generating code
validation.vcxproj -> c:\~\node_modules\socket.io\node_modules\socket.io-client\node_modules\ws\build\Release\validation.node
socket.io@0.9.16 node_modules\socket.io
├── base64id@0.1.0
├── policyfile@0.0.4
├── redis@0.7.3
└── socket.io-client@0.9.16 (xmlhttprequest@1.4.2, uglify-js@1.2.5, active-x-obfuscator@0.0.1, ws@0.4.31)

我不确定这是否是错误,但正在运行基本的测试应用 http://socket.io/#how-to-use 不起作用。它说它找不到包socket.io

有什么想法吗?

【问题讨论】:

    标签: node.js windows-8 installation socket.io


    【解决方案1】:

    这对我来说似乎不是错误,但它会将您的模块安装到一个时髦的位置,所以我只能假设您没有初始化您的包。

    所以你为示例创建一个目录,使用 package.json 初始化它(在目录中运行npm init)然后npm i socket.io --save 这将在你的示例目录中创建一个 node_modules 目录,安装 socket.io 到它,然后将socket.io添加到package.json(即--save部分,或简称-S)。

    然后您应该能够运行该示例。

    多一点解释

    节点包需要在你的包目录中有一个 package.json 文件。因此,如果您有一个名为~/example 的目录,则需要在此目录~/example/package.json 中创建一个package.json 文件,然后才能将模块安装到您的包中。 package.json 文件跟踪您的所有依赖项,例如在安装 socket.io 时。要创建一个 cd ~/examplenpm init - 请按照说明进行操作。你可以take a look at the docs for npm initpackage.json should look like

    当您编写节点代码时,您会将包本地安装在您的包(或项目,如果您更喜欢这样称呼它)目录中。 npm 会将您安装的模块的文件放在node_modules 目录中,因此在我们的示例中,我们希望看到~/example/node_modules,在安装socket.io 之后,我们希望看到~/example/node_modules/socket.io。您可以使用带有 npm 的 -g 标志全局安装一些软件包,但仅针对全局实用程序或您了解为什么需要这样做。

    【讨论】:

    • 您能否解释一下或提供一个链接来详细解释“示例目录”中的“初始化 package.json”是什么意思?
    • 我需要在我计划创建项目的目录中安装socket.io吗?那么,如果我打算创建两个单独的项目,我需要安装 2 次吗?
    • >"funky location"
    • node 和 npm 应该安装正确,你只需要将模块安装在正确的位置。您需要将它安装在您编写的每个需要 socket.io 的节点包中
    猜你喜欢
    • 2016-01-19
    • 1970-01-01
    • 2015-04-07
    • 2012-04-15
    • 1970-01-01
    • 2021-06-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多