我正在玩 Node 并试图让 Browser quest 在本地运行。我尝试安装所需的文件,然后尝试使用 this code 安装 n 管理器并将 Node 升级到最新版本。在 BrowserQuest git 自述文件中,它列出了要包含的包并说:

npm install -d

应该可以将它们全部安装,但失败了,我一个一个安装,但无法安装 sanitizer ,出现此错误:
Error: No compatible version found: sanitizer@'>=1.0.0-0'

node的当前版本是0.10.15(升级后,之前是0.10,但不记得了。

Browserquest 说它应该从 0.4.7 开始工作

问题:我需要做什么才能安装 sanitizer ,还是有其他问题?我是包管理器的新手,所以一个简单的答案会很好。

笔记:
我在 mac 上。 node 位于我的用户主目录中,我已经用它完成了其他教程,因此它可以正常工作。
Browser quest 在我的主目录中,我一直在 BrowserQuest 的基本目录中运行 npm 和 n。
我在一两个月前下载了 BrowserQuest 文件,不确定它们是否有很大变化......

完整的错误:
$ node server/js/main.js
Warning: Native modules not compiled.  XOR performance will be degraded.
Warning: Native modules not compiled.  UTF-8 validation disabled.

module.js:340
    throw err;
          ^
Error: Cannot find module 'sanitizer'
    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> (/Users/(my home)/bq/server/js/utils.js:3:17)
    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 Module.require (module.js:364:17)

最佳答案

似乎包管理器正在寻找版本“>0”但不理解格式“0.0.0”。
我编辑了我的 package.json 文件以使用“0.0.0”格式,它像冠军一样工作!

由此:

{
"name": "BrowserQuest"
, "version": "0.0.1"
 , "private": false
 , "dependencies": {
"underscore": ">0"
, "log": ">0"
, "bison": ">0"
, "websocket": ">0"
, "websocket-server": ">0"
, "sanitizer": ">0"
, "memcache": ">0"
 }
}

对此:
{
"name": "BrowserQuest"
, "version": "0.0.1"
 , "private": false
 , "dependencies": {
"underscore": ">0.0.0"
, "log": ">0.0.0"
, "bison": ">0.0.0"
, "websocket": ">0.0.0"
, "websocket-server": ">0.0.0"
, "sanitizer": ">0.0.0"
, "memcache": ">0.0.0"
 }
}

关于node.js - 为 Node 发出安装包( sanitizer )以运行浏览器任务,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18935774/

10-16 19:58
查看更多