我刚刚开始与webpack和我有困难得到多入口点样本构建。示例中的webpack.config.js文件包含以下行

 var CommonsChunkPlugin = require("../../lib/optimize/CommonsChunkPlugin");

这个错误对我来说是无效的

Error: Cannot find module '../../lib/optimize/CommonsChunkPlugin'

在搜索中,我找到了其他使用CommonsChunkPlugin和表达式的示例

var commonsPlugin = new webpack.optimize.CommonsChunkPlugin("common.js");

哪个错误会失败

ReferenceError: webpack is not defined

更多的搜索发现了一些例子,包括

var webpack = require('webpack');

我的构建现在失败了

Error: Cannot find module 'webpack'

我不知道该怎么做。


当前回答

我也遇到过同样的问题,我通过这个命令解决了,看看这个将解决你的问题。

rm -Rf node_modules
rm -f package-lock.json
npm install

其他回答

NPM链接webpack 为我工作。

我的webpack配置: :“webpack ^ 4.41.2”, :“webpack-dev-server ^ 3.9.0”, :“webpack-cli ^ 3.3.10”

所以有相当少的可能的问题,在我的情况下,在windows:

我将我的项目移动到名称中带有&的文件夹,这对windows来说很好,但它破坏了npm。我的解决方案是从名称中删除&。

测试&mock -> test_and_mock

rm -rf node_modules
rm -rf package.json-lock
npm install --force or npm install --legacy-peer-deps

在我的情况下,帮助我更改父文件夹名称并从此名称中删除一些&,您还可以尝试更改保存代码的名称或文件夹。

这似乎是Windows的一个常见问题。这为我解决了问题:

Nodejs无法在Windows上找到已安装的模块?

“添加一个名为NODE_PATH的环境变量,并将其设置为%USERPROFILE%\Application Data\npm\node_modules (Windows XP), %AppData%\npm\node_modules (Windows 7),或者npm最终在Windows版本上安装模块的任何地方。为了一劳永逸地完成它,将其添加为系统属性对话框的高级选项卡中的系统变量(运行control.exe sysdm.cpl,System,3)。”

注意,实际上不能在NODE_PATH的值中使用另一个环境变量。也就是说,不要只是复制和粘贴上面的字符串,而是将其设置为实际解析的路径,例如C:\Users\MYNAME\AppData\Roaming\npm\node_modules