2012-04-18 7 views
4

最近、私は奇妙なエラーメッセージを受け取りました。今はapp.jsを起動することさえできません。次のことはどういう意味ですか、それを解決する方法を知っている人はいますか?Node.jsの奇妙なエラーメッセージ

node.js:201 
     throw e; // process.nextTick error, or 'error' event on first tick 
      ^
TypeError: Cannot read property 'port' of null 
    at Object.<anonymous> (/Users/henrikpetersson81/node/last/test4/app.js:15:64) 
    at Module._compile (module.js:441:26) 
    at Object..js (module.js:459:10) 
    at Module.load (module.js:348:31) 
    at Function._load (module.js:308:12) 
    at Array.0 (module.js:479:10) 
    at EventEmitter._tickCallback (node.js:192:40) 
+2

おそらく、構文エラーがありますが、コードをポストしない限り、我々は助けることはできません。 –

+0

これは実行時エラーです。構文エラーではありません。構文エラーは "SyntaxError"となります。 –

+0

コードを表示できますか? Expressを使用している場合、Express 3.0が動作する方法が変更されていることに注意してください。 – Menztrual

答えて

1

ソーa similar question recently。同様の問題が発生している可能性があります。おそらくapp.listenが完了し、対応するコールバックが呼び出される前に、あなたが使用しているライブラリ(または自分のコード)がapp.address().portにアクセスしようとしています。

1

同じエラーメッセージを説明する記事があり、ポートに問題があります。私は3000から5959にポートを変更し、今それは動作します。奇妙なことに、ポートが突然動作を停止しました。

+1

もう1つのアプリケーション、おそらくはポート3000でリッスンしているRubyアプリケーションがありますか? –

+1

実際、いいえ、それはちょっと変です。 – holyredbeard

+0

私と同じです!ポート3000は他のアプリケーションではビジーではありませんが、NodeJSはそれをリッスンできません。本当に変です! –

4

ポートはすでに使用されています。それは私の場合だった。

0

私は同じ問題がありました。ノードサーバーを強制終了すると、ノードサーバーがkillされていない可能性があるので、nodemonを使用している(またはその点では単純です)ので、サーバーは引き続き3000ポートを受信して​​います。これを解決するには端末を閉じてサーバを再起動してください(ノードとNodemonを使ってubuntuマシンで)

0

私はport:3000がnode.jsスクリプトだけで使用される同様の問題がありました。 PIDを強制終了すると、ポート:3000のために働いていました。

lsof -i :3000 
kill -9 <PID> 
0

localhostがリッスンしているポートが、他のアプリケーション/サービスで使用されています。次の場所のポートを8888や3000のような別のポート番号に変更してみてください。

/Users/henrikpetersson81/node/last/test4/app.js

関連する問題