2012-03-17 20 views
5

初めてNode.jsを使いこなし、expressを使って簡単なアプリケーションを作成することに決めました。 localhost:3000へ移動するとき、私は次のエラーを取得する基本的なExpressプロジェクトを実行するときにエラーが発生する

npm install -g express 
express 
npm install -d 
node app.js 

:私はそうのような空のディレクトリにgithubからの指示に従っ

Express 
500 Error: Cannot find module './lib/jade' 
at Function._resolveFilename (module.js:332:11) 
at Function._load (module.js:279:25) 
at Module.require (module.js:354:17) 
at require (module.js:370:17) 
at Object. (C:\dev\gravity_kata\node_modules\jade\index.js:4:5) 
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 Module.require (module.js:354:17) 

node_modules\jade\libの下で見たとき、私はジェイドのライブラリファイルのすべてを参照してください、しかし、いいえjadeフォルダー。そこでjadeと呼ばれるlibの下にフォルダを作成し、そこでライブラリファイルを移動して、デフォルトのアプリケーションが動作するようになりました。

Node.jsとExpressの経験がほとんどないので、私は間違ったことをしています。誰がここで何が起こっているか考えているのですか?

編集:

私はジェイドコードに鳩。 Jadeのindex.jsファイルの下にはlib\jadeが必要で、libフォルダの下にはjade.jsというファイルはありませんでした。まあ、それは問題ですが、なぜjade.jsファイルが見つからないのですか? Jade sourceをnpmから引っ張ると、libディレクトリの下にjade.jsファイルがあります。ダウンロードしたソースのlibフォルダを自分のプロジェクトのJadeモジュールにコピーしたところ、今は正常に動作します。

何らかの理由で、npmはjade.jsファイルをプルダウンしていません。 packages.jsonファイルのバージョンは、ソースiと一致し、0.21.0と一致します。誰がなぜこれが起こったのか考えていますか?

+1

これはヒスイや明白な問題のようです。コードに潜んでみてください... –

+0

コードを掘り下げた後に私が見つけたものについて私の回答を編集しました。 – JChristian

+0

ソースからダウンロードして抽出してくれました。不足しているファイルを指摘してくれてありがとう。 NPM/Jadeのバグでなければなりません。 – foobar

答えて

2

私にとっては、Windowsでは、翡翠バージョン0.22.0がこの問題を修正しました。

+0

バージョン0.22.0が私のための問題を同様に修正したので、それはjadeのバグだったに違いありません。 – JChristian

2

おそらく、エクスプレスをグローバルにインストールした(-g)が、npm install -dはローカルで行われたという事実と関係しています。ローカルの両方、両方のグローバル、または私が好むようにそれらをインストールしよう:

sudo npm uninstall express -g 
npm install express 
npm install jade (or npm install -d) 
+1

expressをグローバルにインストールすると、実行可能ファイルにアクセスできます。私はエクスプレスをグローバルに削除しましたが、エクスプレスとジェイドはすでにローカルにインストールされていました。私はまだ同じエラーが発生しています。 – JChristian

11

CDあなたの特急プロジェクトフォルダと実行しても「NPMのインストール」、これはすべての依存関係

+0

エクスプレスプロジェクトフォルダと言うと、 '/ node_modules/express'ディレクトリを意味しますか? – JChristian

+0

あなたはLinuxやWindowsを実行していますか? はその後 CD testproject NPMは、コメントとよくない – gastonfartek

+0

イム申し訳ありませんイムをインストール をtestproject表現し、あなたが を使用して、デスクトップ上のプロジェクトを作成すると、私は再び最初の急行を入力してプロジェクトを作成し、そのコメント – gastonfartek

0

は本当に必ずすべてのことを確認インストールされます。モジュールrequireが正しいです。 Javascriptは実際に何が間違っているかを伝えることについて非常に面白いです。翡翠のテンプレート行を削除して、何が起こるかを見てみましょう。

0

jadeモジュールのエラーでこの問題が検出されました。 jadeフォルダが自動的に作成されなかったようです(何らかのバグ)。今私はこれをjadeの再インストールで解決しました。その後、jadeフォルダが自動的に作成されました。 を使用するnpmをアンインストールするgulp-jadeをもう一度インストールしてからgulp-jadeを再度インストールしてください

関連する問題