невозможно запустить приложение node.js с помощью Connect (не удается найти модуль '/ home / ec2-user / nodeapp / connect') - PullRequest
0 голосов
/ 01 декабря 2011

Я пытаюсь выяснить, как использовать модуль Connect для запуска приложения моего узла, но, похоже, не могу вызвать connect: (

Обратите внимание, что я пытаюсь использовать команды, описанные здесь как "init.d" friendly start, stop, and restart commands, чтобы не использовать Connect внутри существующего приложения.

[ec2-user@ip-10-196-170-34 nodeapp]$ node connect
node.js:116
        throw e; // process.nextTick error, or 'error' event on first tick
        ^
Error: Cannot find module '/home/ec2-user/nodeapp/connect'
    at Function._resolveFilename (module.js:299:11)
    at Function._load (module.js:245:25)
    at Array.<anonymous> (module.js:402:10)
    at EventEmitter._tickCallback (node.js:108:26)

Все, что я мог придумать, могло иметь значение:

[ec2-user@ip-10-196-170-34 ~/nodeapp]$ uname -a
Linux ip-10-196-170-34 2.6.35.14-103.47.amzn1.x86_64 #1 SMP Fri Nov 18 04:03:11 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux

[ec2-user@ip-10-196-170-34 ~/nodeapp]$ node -v
v0.4.2

[ec2-user@ip-10-196-170-34 ~/nodeapp]$ express -v
2.5.1

[ec2-user@ip-10-196-170-34 ~/nodeapp]$ npm -v
1.0.106

[ec2-user@ip-10-196-170-34 ~/nodeapp]$ npm list
/home/ec2-user/nodeapp
├─┬ connect@1.8.1
│ ├── formidable@1.0.8
│ ├── mime@1.2.4
│ └── qs@0.4.0
├─┬ express@2.5.1
│ ├── mime@1.2.4
│ ├── mkdirp@0.0.7
│ └── qs@0.4.0
├─┬ simpledb@0.0.7
│ └─┬ aws-lib@0.0.5
│   ├── UNMET DEPENDENCY sax 0.1.x
│   └── UNMET DEPENDENCY xml2js 0.1.x
└─┬ socket.io@0.8.7
  ├── policyfile@0.0.4
  ├── redis@0.6.7
  └─┬ socket.io-client@0.8.7
    ├── uglify-js@1.0.6
    ├── websocket-client@1.0.0
    └── xmlhttprequest@1.2.2

[ec2-user@ip-10-196-170-34 ~/nodeapp]$ npm list -g
/usr/local/lib
├─┬ connect@1.8.1
│ ├── formidable@1.0.8
│ ├── mime@1.2.4
│ └── qs@0.4.0
├─┬ express@2.5.1
│ ├─┬ connect@1.8.1
│ │ └── formidable@1.0.8
│ ├── mime@1.2.4
│ ├── mkdirp@0.0.7
│ └── qs@0.4.0
└─┬ npm@1.0.106
  ├── abbrev@1.0.3
  ├── graceful-fs@1.0.1
  ├── ini@1.0.1
  ├─┬ minimatch@0.0.4
  │ └── lru-cache@1.0.4
  ├── node-uuid@1.2.0
  ├── nopt@1.0.10
  ├── proto-list@1.0.0
  ├── request@2.1.1
  ├── rimraf@1.0.8
  ├── semver@1.0.11
  ├── slide@1.1.3
  └── which@1.0.2

Одним из предложений было просто запустить соединение из командной строки без префикса узла:

[ec2-user@ip-10-196-170-34 nodeapp]$ connect
-bash: connect: command not found

1 Ответ

1 голос
/ 02 декабря 2011

connect - это модуль, который вы должны require использовать из своей собственной программы, которая создает сервер и т. Д., Например:

var connect = require('connect');
var server = connect.createServer(...);

Поместите это в файл наподобие server.js, тогда вы можете позвонить:

node server.js
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...