错误:找不到模块'webpack'
我刚刚开始使用webpack,并且难以获得多入口点样本 。 示例中的webpack.config.js文件包含该行
var CommonsChunkPlugin = require("../../lib/optimize/CommonsChunkPlugin");
这对我来说是错误的
Error: Cannot find module '../../lib/optimize/CommonsChunkPlugin'
在周围search,我发现使用CommonsChunkPlugin与expression式的其他例子
var commonsPlugin = new webpack.optimize.CommonsChunkPlugin("common.js");
与错误失败
ReferenceError: webpack is not defined
一些更多的search发现了一些例子,其中包括
var webpack = require('webpack');
而我的构build现在失败了
Error: Cannot find module 'webpack'
我不知如何进行。
在Windows上工作时,我已经在本地安装了webpack,并解决了我的问题
所以,在你的命令提示符下,进入你要运行webpack的目录,在本地安装webpack(没有-g)并享受…
将全球安装的软件包链接到您的项目
npm link webpack
似乎是一个常见的Windows问题。 这对我来说是固定的:
Nodejs在Windows上找不到安装的模块?
“添加一个名为NODE_PATH
的环境variables,并将其设置为%USERPROFILE%\Application Data\npm\node_modules
(Windows XP), %AppData%\npm\node_modules
(Windows 7),或者npm最终安装Windows风格要做到一劳永逸,在系统属性对话框的高级选项卡(运行control.exe sysdm.cpl,系统,3)中添加这个作为一个系统variables。
请注意,您实际上不能在NODE_PATH
的值内使用另一个环境variables。 也就是说,不要复制和粘贴上面的string,而是将其设置为实际parsing的path,如C:\Users\MYNAME\AppData\Roaming\npm\node_modules
我在OS X上遇到了这个问题,它似乎是由我的全局安装的webpack
和我本地安装的webpack-dev-server
之间的版本不匹配造成的。 更新到最新版本摆脱了这个问题。
如果你已经安装了一个节点包,并且仍然得到这个包未定义的消息,那么你可能会遇到链接到该二进制文件的PATH问题。 只是澄清一个二进制和可执行文件本质上是做同样的事情,即执行一个包或应用程序。 ei webpack …执行节点包webpack。
在Windows和Linux中都有一个全局二进制文件夹。 在Windows中,我相信它就像C:// Windows / System32,而在Linux中它是usr / bin。 当您打开terminal/命令提示符时,它的configuration文件将PATHvariables链接到全局bin文件夹,以便您可以从中执行软件包/应用程序。
我最好的猜测是,全球安装webpack可能没有成功地将可执行文件放在全局二进制文件夹中。 没有那里的可执行文件,你会得到一个错误信息。 这可能是另一个问题,但可以肯定地说,如果你在这里阅读,全局运行webpack不适合你。
我对这个问题的解决方法是取消全局运行webpack并将PATH链接到node_module二进制文件夹,即/node_modules/.bin。
WINDOWS:将node_modules / .bin添加到PATH中。 这里是一个关于如何在Windows中更改PATHvariables的教程。
LINUX:转到您的项目根目录并执行此操作…
export PATH:$PWD/node_modules/.bin:$PATH
在Linux中,每次打开terminal时都必须执行此命令。 此处的链接显示如何对PATHvariables永久性进行更改。
在Windows上,我观察到,如果您没有pipe理权限(即,您不是本地pipe理员)在机器上显示此问题。
正如其他人所build议的,解决scheme似乎是通过不使用-g
提示在本地安装。
npm install --save-dev webpack
是不够的。
您还必须安装以下内容:
npm install --save-dev webpack-dev-server