这似乎是一个常见问题,但经过几天的主动搜索,我没有找到任何解决方案适用于我的案例。Webpack - 无法在Windows上运行(也不是webpack-dev-server)
- 的windows7-64
- 节点:6.3.0-64(也尝试节点-v4.4.7-x64)的
- NPM:3.10.3
- 的WebPack:1.13.1
- 升华文字(不VIM)
首先,我不能安装fsevents上窗口,这可能是问题,因为它是图书馆观看在OS X
D:\file>npm install webpack
[email protected] D:\file
`-- [email protected]
npm WARN optional Skipping failed optional dependency /chokidar/fsevents:
npm WARN notsup Not compatible with your operating system or architecture: [email protected]
因此,如果您--watch
适用于Windows,请告诉我,你有安装的WebPack时跳过fsevents同样的问题?
其次,webpack --watch
确实编译文件,但它不看的。
E.g.如果我使用手写笔的手表,那么它实际上阻碍我的命令行,直到我按CTRL + C
D:\file>stylus -w style.styl
watching C:/Users/...
compiled style.css
watching style.styl
_
,仅在CTRL + C将解除我的键盘。
^CTerminate batch job (Y/N)? y
虽然webpack -w
是完全不同的。这不仅仅是没有编辑文件的变化,但它也没有看。我的意思是,在输入命令webpack --watch
后,它一次编译文件,但它不会锁定我的键盘,因此它允许我编写另一个命令。
D:\webpa>webpack main.js bundle.js
D:\webpa>webpack -w main.js bundle.js
D:\webpa>webpack --watch main.js bundle.js
D:\webpa>
与webpack-dev-server
一样 - 它启动服务器,但随后马上完成它。
D:\webpa>webpack-dev-server --hot --inline
http://localhost:8080/
webpack result is served from/
content is served from D:\webpa
D:\webpa>
它看起来问题不在于webpack.config.js,因为它不具有像webpack --watch main.js bundle.js
命令甚至观看,但无论如何,这是我的基本配置。
var webpack = require('webpack');
module.exports = {
context: __dirname,
entry: "./main.js",
output: {
path: __dirname,
filename: "bundle.js"
},
};
而且我试过很多其他变体:
var webpack = require('webpack');
var path = require('path');
var entry = path.join(__dirname, "main.js");
var WebpackNotifierPlugin = require('webpack-notifier');
module.exports = {
context: __dirname,
entry: entry,
output: {
path: __dirname,
filename: "bundle.js"
},
resolve: {root: [__dirname]},
resolve: { fallback: path.join(__dirname, "node_modules") },
resolveLoader: { fallback: path.join(__dirname, "node_modules") },
plugins: [
new webpack.OldWatchingPlugin(),
new WebpackNotifierPlugin(),
new webpack.ResolverPlugin(
new webpack.ResolverPlugin.DirectoryDescriptionFilePlugin("bower.json", ["main"])
),
new webpack.optimize.CommonsChunkPlugin('vendors', 'vendors/js/applibs.js'),
new webpack.optimize.DedupePlugin()
]
};
正如我所说的,这个问题似乎没有webpack.config。JS
我也尝试了诸如:
echo fs.inotify.max_user_watches=524288
webpack-dev-server --content-base ./ --port 9966 --hot --inline
webpack --watch --watch-poll
rename/move/create new folder, reinstall node.js and webpack
所以是的,如果你有这个问题,你解决它,请分享一些信息。
- 您是否有安装问题fsevents?
- 是你的
webpack --watch
命令阻止你的键盘和实际上看,但只是没有编译后的文件更改?还是像我的情况一样立即完成观看? - 其他建议除了
--watch
和webpack-dev-server
之外还有什么建议?
谢谢!
fsevents可能是l ike unix特定的东西。我在Windows上得到相同的警告,这不是一个问题,所以你可以消除这个问题。 – mjohnsonengr
我也有幸添加了'watchOptions:{aggregateTimeout:300, poll:1000 },'到我的开发者服务器配置。我不得不实际制作开发服务器配置,而不是仅仅依靠webpack-dev-server CLI。请参阅https://webpack.github.io/docs/configuration.html#devserver – mjohnsonengr
@mjohnsonengr,感谢您的帮助!是的,我忘了提及,我也尝试过'watchOptions:{aggregateTimeout:300,poll:1000}',但它没有奏效。你可以分享你的webpack.config.js和dev服务器配置吗?顺便说一下,你的' - watch'从一开始就工作正常吗? – SamAI