web-dev-qa-db-ja.com

Webpack 4:エントリモジュールのエラーが見つかりません:エラー: './src'を解決できません

webpack-4を初めて実行しようとしました

webpack ./src/js/app.js ./dist/app.bundle.js

警告/エラーが表示されます:

WARNING in configuration
The 'mode' option has not been set, webpack will fallback to 'production' for this value. Set 'mode' option to 'development' or 'production' to enable defaults for each environment.
You can also set it to 'none' to disable any default behavior. Learn more: https://webpack.js.org/concepts/mode/

ERROR in multi ./src/js/app.js ./dist/app.bundle.js
Module not found: Error: Can't resolve './dist/app.bundle.js' in 'D:\wamp64\www\webpack-4'
 @ multi ./src/js/app.js ./dist/app.bundle.js

その後、モードを変更しようとしました

webpack --mode development

それが示している :

ERROR in Entry module not found: Error: Can't resolve './src'
18
Sabir Hussain

解決済み

解決策を見つけるために多くの時間を費やしました。

解決策:index.jsファイルをsrcフォルダーに追加します。

それだけです!..解決済み:)


調査中に、webpack 4に関するいくつかの事実を見つけました。

webpack 4はデフォルトでは設定ファイルを必要としません!

webpack 4ありますエントリポイントを定義する必要はありません:デフォルトとして./src/index.jsが必要です!

31
Sabir Hussain

now.sh にデプロイするときにこの問題に遭遇しました

解決策:デフォルトの動作を使用する

エントリポイントをsrc/index.jsに移動します。

これは webpack@4entryのデフォルト値 を活用します:

デフォルトでは、その値は./src/index.jsですが、webpack構成でエントリプロパティを構成することにより、異なる(または複数のエントリポイント)を指定できます。

解決策:具体的に

@Lokehが指摘したように、JSファイルの場所を変更したくない場合は、webpack.config.jsで常にpath.resolve()を使用できます。

entry: path.resolve(__dirname, 'src') + '/path/to/your/file.js',
4
Édouard Lopez
webpack ./src/js/app.js --output ./dist/app.bundle.js --mode development

これは私のために働いた。私は同じ問題を抱えていました、それはwebpackの新しいバージョンのためです

1
ladhari

Webpack ^ 4.29.6の時点では、設定ファイルは必要ないため、package.jsonにパスを指定する代わりに、単に「build」:「webpack」と記述し、srcフォルダーのエントリポイントとしてindex.jsを保持する必要があります。ただし、エントリポイントを変更する場合は、webpack構成ファイルで変更できます。

0
Sourabh