2013-01-04 57 views
7

Tôi chỉ cần cài đặt Node.js + microsoft visual để có thể cài đặt các WebSocket, nó được cài đặt tốt:Node.js mô-đun WebSocket cài đặt nhưng sẽ không làm việc trong các kịch bản

C:\Users\Administrator>npm install websocket 
npm http GET https://registry.npmjs.org/websocket 
npm http 304 https://registry.npmjs.org/websocket 

> [email protected] install C:\Users\Administrator\node_modules\websocket 
> node install.js 

[websocket v1.0.8] Attempting to compile native extensions. 
[websocket v1.0.8] Native extension compilation successful! 
[email protected] node_modules\websocket 

C:\Users\Administrator> 

Bây giờ tôi đang cố gắng để chạy một kịch bản với điều này:

var WebSocketServer = require('websocket').Server; 

và nó tôi có được điều này:

C:\Users\Administrator>node C:\server\src\main.js 

module.js:340 
throw err; 
    ^
Error: Cannot find module 'websocket' 
at Function.Module._resolveFilename (module.js:338:15) 
at Function.Module._load (module.js:280:25) 
at Module.require (module.js:362:17) 
at require (module.js:378:17) 
at Object.<anonymous> (C:\server\src\main.js:2:23) 
at Module._compile (module.js:449:26) 
at Object.Module._extensions..js (module.js:467:10) 
at Module.load (module.js:356:32) 
at Function.Module._load (module.js:312:12) 
at Module.runMain (module.js:492:10) 

C:\Users\Administrator> 

Bất kỳ trợ giúp sẽ được đánh giá cao, tôi đã cố gắng cài đặt nhiều lần, tôi đã thử cài đặt nó trên toàn cầu (thẻ -g).

Trả lời

0

Npm cài đặt mô-đun trong ./node_modules/. Vì vậy, bạn nên cài đặt websocket IN các C:\server\src\.

3

Tôi đã có cùng một lỗi ở đây .. Tôi làm theo các bước sau:

Execute cmd as Administrator (Nhấp chuột phải cmd icon-> Run as Administrator) Sau đó, gõ vào cmd:

c:\Node Instalation Dir\> npm install -g express 
c:\Node Instalation Dir\> npm install websocket --force 

Bây giờ bạn có thể chạy tập lệnh của mình:

c:\Node Instalation Dir\> node script.js 

Tôi đã làm trong máy chủ thử nghiệm .. cố gắng không sử dụng '--force' trong máy chủ sản xuất ok?

+0

'npm install websocket --force' làm việc cho tôi, cảm ơn! (Tuy nhiên, không biết tại sao nó lại khác biệt) – BiAiB

4

Lưu ý rằng bạn có thể gặp lỗi này nếu bạn đã cài đặt mô-đun NPM trên toàn cầu (với tùy chọn -g) và chưa thông báo cho node để sử dụng đường dẫn mô-đun chung để giải quyết các yêu cầu.

Trên Linux Tôi đã cài đặt websocket mô-đun trên toàn cầu:

$ sudo npm install -g websocket 
npm http GET https://registry.npmjs.org/websocket 
npm http 200 https://registry.npmjs.org/websocket 
npm http GET https://registry.npmjs.org/websocket/-/websocket-1.0.8.tgz 
npm http 200 https://registry.npmjs.org/websocket/-/websocket-1.0.8.tgz 

> [email protected] install /usr/local/lib/node_modules/websocket 
> node install.js 

[websocket v1.0.8] Attempting to compile native extensions. 
[websocket v1.0.8] Native extension compilation successful! 
[email protected] /usr/local/lib/node_modules/websocket 

Sau này tôi đã xuất khẩu biến NODE_PATH môi trường để trỏ đến con đường được đề cập trong đầu ra ở trên:

export NODE_PATH=/usr/local/lib/node_modules 

Sau này :

$ node 
> require('websocket') 
{ server: 
    { [Function: WebSocketServer] 
    super_: { [Function: EventEmitter] listenerCount: [Function] } }, 
    ... 

Hy vọng hoàn toàn điều này giúp ai đó tìm kiếm thông báo lỗi này.

Các vấn đề liên quan