以前のバージョンのnode.js、npm、およびsocket.ioでサーバを使用していましたが、アップデート後にsocket.ioで問題が発生し始めました:エラー:モジュール './lib/socket.io'を見つけることができません
$ node server.js
node.js:237
throw e; // process.nextTick error, or 'error' event on first tick
^
Error: Cannot find module './lib/socket.io'
at Function._resolveFilename (module.js:333:15)
at Function._load (module.js:280:25)
at Module.require (module.js:357:17)
at require (module.js:373:17)
at Object.<anonymous> (/usr/local/lib/node_modules/socket.io/index.js:8:18)
at Module._compile (module.js:444:26)
at Object..js (module.js:462:10)
at Module.load (module.js:351:32)
at Function._load (module.js:309:12)
at Module.require (module.js:357:17)
アップグレードする前に、node_modulesの下にあるsocket.ioのシンボリックリンクに、同じ名前の「中央にインストールされた」ディレクトリを示しました。最近私はプロジェクトにsocket.ioをローカルにインストールしようとしました:
npm install socket.io
私のプロジェクトのnode_modulesの下にsocket.ioを配置しました。最初にエラーメッセージが "./lib/socket.io"と書かれていたことが奇妙なことがわかりましたが、私が調べたところでは、project/node_modules/socket.io/index.jsにsocket.ioが必要です。
module.exports = require('./lib/socket.io');
しかし、何も輸送以外がありません:
...project/node_modules/socket.io/lib
$ ll
total 24
drwxrwxr-x 3 ghbarratt dev 4096 Mar 26 14:38 .
drwxrwxr-x 5 ghbarratt dev 4096 Mar 26 15:03 ..
-rw-rw-r-- 1 ghbarratt dev 10777 Mar 6 16:37 transport.js
drwxrwxr-x 3 ghbarratt dev 4096 Mar 26 14:38 transports
別socket.ioのディレクトリがあるはずやlibの下socket.io.jsファイル? index.jsに内部ファイルがないと思われるのはなぜですか?
バージョン:
node -v
v0.7.7-pre
npm -v
1.1.12
[email protected]
Distributor ID: Ubuntu
Description: Ubuntu 10.10
Release: 10.10
Codename: maverick
'node_modules/socket.io/lib /'には、 'socket.io.js'を含む複数のJSファイルが含まれている必要があります。または少なくとも私のこと(ノード0.6.5、npm 1.1.0、socket.io 0.9.2)。 –
@Felix Loether - 確認していただきありがとうございます。今私は私が持っているべきすべてのファイルを私が得なかった理由を理解する必要があります。 – ghbarratt