我刚刚开始与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'

我不知道该怎么做。


当前回答

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

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

测试&mock -> test_and_mock

其他回答

你可以试试这个。

npm install --only=dev

这对我很管用。

我在OS X上遇到了这个问题,它似乎是由我的全局安装的webpack和本地安装的webpack-dev-server之间的版本不匹配引起的。将两者更新到最新版本就解决了这个问题。

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

在windows上,我观察到,如果您在计算机上没有管理权限(即,您不是本地管理员),就会出现这个问题。

正如其他人建议的那样,解决方案似乎是通过不使用-g提示在本地安装。

上面建议的任何方法都不适合我(包括NODE_PATH变量)。我创建了一个sym链接的“node_modules”从我的本地文件夹到全局AppData(如下所示),它就像魅力。

C:\Users\mmoinuddin\AppData\Roaming\npm>mklink /D node_modules c:\essportreact\day1\node_modules
symbolic link created for node_modules <<===>> c:\essportreact\day1\node_modules
C:\essportreact\day1>webpack
Hash: 2a82a67f90f9aa05ab4a
Version: webpack 1.15.0