[解決済み] Node.jsで "Cannot find module "エラーを解決するにはどうしたらいいですか?
質問
GitHubからモジュールをダウンロードし、指示に従ってビルドした後、それを既存のプロジェクトに取り込もうとしています。
> npm install ../faye
これでうまくいくように見える。
> npm list
/home/dave/src/server
└─┬ [email protected]
├── [email protected]
├── [email protected]
└── [email protected]
しかし、Node.jsはモジュールを見つけることができません。
> node app.js
node.js:201
throw e; // process.nextTick error, or 'error' event on first tick
^
Error: Cannot find module 'faye'
at Function._resolveFilename (module.js:334:11)
at Function._load (module.js:279:25)
at Module.require (module.js:357:17)
at require (module.js:368:17)
at Object.<anonymous> (/home/dave/src/server/app.js:2:12)
at Module._compile (module.js:432:26)
at Object..js (module.js:450:10)
at Module.load (module.js:351:31)
at Function._load (module.js:310:12)
at Array.0 (module.js:470:10)
私はここで何が起こっているのか本当に理解したいのですが、次にどこを見ればいいのか少し途方に暮れています。何か提案はありますか?
解決方法は?
使用方法
npm install
は、カレントディレクトリのみ (サブディレクトリは
node_modules
). app.jsは、以下の場所にありますか?
home/dave/src/server/
? もしそうでなく、任意のディレクトリからモジュールを使用したい場合は、グローバルにインストールする必要があります。
npm install -g
.
私は通常、ほとんどのパッケージをローカルにインストールし、プロジェクトのコードと一緒にチェックインできるようにしています。
更新(2019/8)しました。
現在では
パッケージロック.json
このファイルは、npm が node_modules ディレクトリを変更したときに自動的に生成されます。そのため、パッケージのチェックを省くことができます。
package-lock.json
は、現在使用している node_module の正確なバージョンを追跡します。パッケージをインストールするには
package-lock.json
の代わりに
package.json
コマンドを使用します。
npm ci
.
アップデート(2016/3)しました。
私の対応、特に自分のコードが依存しているパッケージのチェックインについては、多くの非難を受けました。 数日前、誰かが自分のパッケージのすべてをアンパブリッシュしました ( https://kodfabrik.com/journal/i-ve-just-liberated-my-modules ReactやBabel、その他もろもろが壊れました。 もしあなたがプロダクションコードを持っているなら、NPMがあなたのために依存関係を実際に維持することに頼ることはできないということが、今明らかになることを願っています。
関連
-
[解決済み] リソースの読み込みに失敗しました: net::ERR_CONNECTION_REFUSED : Nodejs
-
[解決済み】モジュール '@babel/core' が見つかりません。
-
[解決済み] joiライブラリを使用して2つの時間を比較する方法
-
[解決済み] Yarn にパッケージを強制的に再インストールさせるにはどうしたらいいですか?
-
[解決済み] NodeJsのSequelizeでautoIncrementはどのように動作するのですか?
-
[解決済み] node.js - リクエスト - "emitter.setMaxListeners() "はどのように?
-
[解決済み] Node.jsのプログラムにコマンドライン引数を渡すにはどうしたらいいですか?
-
[解決済み] Node.jsを使うタイミングをどう判断するか?
-
[解決済み] Node.jsで終了する方法
-
[解決済み] Node.jsアプリケーションをデバッグするにはどうすればよいですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Node.js Error: Cannot find module express
-
[解決済み】ExpressJSとMeteorJSの比較【終了しました
-
[解決済み】Express.js req.bodyが未定義です。
-
[解決済み】Nodejsの解決方法:Error: ENOENT: そのようなファイルまたはディレクトリがありません
-
[解決済み】Node.jsのホスト名/IPが証明書のaltnamesと一致しない。
-
[解決済み】MongooseでEnumを作成し使用する方法
-
[解決済み】NPMインストールエラー:解析中の予期せぬJSON入力の終了 '...nt-webpack-plugin": "0'' 付近。
-
[解決済み] Node.jsのホスト名/IPが証明書のaltnamesと一致しない
-
[解決済み] Npmエラー - Windows NT - 解決方法
-
[解決済み] ReferenceError: describe は定義されていません NodeJs