Ошибка: не удается найти модуль 'webpack/lib/node/NodeTemplatePlugin'

Получил эту ошибку после запуска webpack. Webpack установлен глобально, и я запускаю Node

PS D:\Projects\ng2-admin-master> ng serve
Cannot find module 'webpack/lib/node/NodeTemplatePlugin'
Error: Cannot find module 'webpack/lib/node/NodeTemplatePlugin'
    at Function.Module._resolveFilename (module.js:469:15)
    at Function.Module._load (module.js:417:25)
    at Module.require (module.js:497:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (D:\Projects\ng2-admin-master\node_modules\html-webpack-plugin\lib\compiler.js:11:26)
    at Module._compile (module.js:570:32)
    at Object.Module._extensions..js (module.js:579:10)
    at Module.load (module.js:487:32)
    at tryModuleLoad (module.js:446:12)
    at Function.Module._load (module.js:438:3)
    at Module.require (module.js:497:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (D:\Projects\ng2-admin-master\node_modules\html-webpack-plugin\index.js:7:21)
    at Module._compile (module.js:570:32)
    at Object.Module._extensions..js (module.js:579:10)
    at Module.load (module.js:487:32)
PS D:\Projects\ng2-admin-master>

Ответы

Ответ 1

Узел требует, чтобы вы установили веб-пакет в ваш проект.

У вас есть 2 варианта решения вышеуказанного:

  1. Удалить глобальный веб-пакет и установить его локально

    npm uninstall -g webpack npm install --save-dev html-webpack-plugin webpack webpack-dev-server

  2. Вы можете связать глобальный пакет pkg с модулями вашего проекта. Недостатком этого является то, что ваш проект будет вынужден использовать самый обновленный веб-пакет. Это создаст проблему только тогда, когда некоторые обновления не имеют обратной совместимости.

    npm я webpack -g; npm link webpack --save-dev

Вы можете опустить html-webpack-plugin в зависимости от ваших требований.

Вы можете найти больше информации на этой странице GitHub.


Обновление (апрель 2018 г.)

Webpack 4 и выше, вам необходимо установить webpack-cli. Вы также можете установить webpack-dev-middleware если вам нужно использовать опции, отмеченные на этой странице ключом.

В этом случае команда для установки:

npm install --save-dev webpack webpack-cli html-webpack-plugin webpack-dev-server webpack-dev-middleware.

Как упомянуто выше, webpack-dev-middleware должен быть добавлен в зависимости от ваших требований.

Ответ 2

У меня возникла аналогичная проблема при обновлении моего приложения Angular, используя ncu. Наконец, решив его, удалите node_modules и package-lock.json и переустановите пакеты.

Вы можете запустить это в PowerShell (убедитесь, что вы находитесь в правильном рабочем каталоге):

rm node_modules -r -force
rm package-lock.json
npm cache verify
npm install

Ответ 3

Я пробовал в течение нескольких часов почти все, что предлагалось в разных потоках при переполнении стека, но ничего не работало. В конце концов (с большой удачей) я попробовал это, и это сработало:

deleted node_modules library (not sure if required)
npm install -g @angular/cli
npm install @angular/cli
npm install

Ответ 4

Контекст:

У меня была эта проблема с приложением React.

Я попытался удалить веб-пакет глобально и локально, а также удалить локальную папку node_modules, переустановить все локальные модули npm (с npm install) и т.д.

Ничего не сработало, пока не сделал это...


Решение:

  1. Удалите package-lock.json & node_modules.
  2. Не удаляйте другие файлы (например, package.json, index.js...)
  3. Установите весь пакет (npm извлекает информацию для установки из package.json) с помощью npm install === npm i.
  4. Теперь запустите свой код и вуаля! 🎉

Ответ 5

Проверьте webpack.config.js и убедитесь, что все зависимости установлены.

У меня тоже была такая же проблема. Это было решено путем установки зависимости html-webpack-plugin. Это было определено в моем webpack.config.js но не установлено.

Ответ 6

Удалите package-lock.json и попробуйте npm install, чтобы решить эту проблему.

Ответ 7

Ниже работало для меня: -

  • Удалены node_modules
  • Удаленный пакет-lock.json
  • Запустите npm install