web-dev-qa-db-fra.com

Webpack 4: ERREUR dans le module d'entrée introuvable: erreur: impossible de résoudre le problème "./src"

J'essayais de courir webpack-4 première fois

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

montre l'avertissement/erreur:

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

Puis j'ai essayé de changer de mode

webpack --mode development

ça montre :

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

Résol

J'ai passé beaucoup de temps à trouver la solution.

Solution: Ajouter index.js fichier dans le dossier src.

Ca y est! .. résolu :)


Pendant la recherche, j’ai trouvé des faits sur webpack 4:

Webpack 4 n’a pas besoin d’un fichier de configuration par défaut!

webpack 4 il y a pas besoin de définir le point d'entrée: il faudra ./src/index.js par défaut!

31
Sabir Hussain

Rencontré ce problème lors du déploiement sur now.sh

Solution: utiliser le comportement par défaut

Déplacez le point d'entrée vers src/index.js.

Ce levier valeur par défaut webpack@4 Pour entry :

Par défaut, sa valeur est ./src/index.js, Mais vous pouvez en spécifier un autre (ou plusieurs points d'entrée) en configurant la propriété d'entrée dans la configuration de Webpack.

Solution: soyez spécifique

Comme @Lokeh l'a souligné, si vous ne souhaitez pas modifier l'emplacement de votre fichier JS, vous pouvez toujours utiliser path.resolve() dans votre webpack.config.js:

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

Cela a fonctionné pour moi. J'ai eu le même problème, c'est à cause d'une nouvelle version de webpack

1
ladhari

Depuis webpack ^ 4.29.6, vous n'avez besoin d'aucun fichier de configuration. Au lieu de donner le chemin dans package.json, nous devons simplement écrire "build": "webpack" et conserver index.js comme point d'entrée dans le dossier src. Toutefois, si vous souhaitez modifier le point d’entrée, vous pouvez le faire dans le fichier de configuration Webpack.

0
Sourabh