Webpack Bundle Analyzer生成报告时提示’Error: spawn sync’怎么办?
刚在项目里装了webpack-bundle-analyzer,按文档配好插件后运行build,结果报错:Error: spawn sync /path/to/chrome ENOENT。尝试过npm install –save-dev了,配置代码是这样的:
new BundleAnalyzerPlugin({
analyzerMode: 'static',
openAnalyzer: false
})
网上查说可能需要装Chrome,但我的开发环境是无头浏览器,不想装浏览器。有没有其他解决办法?
new BundleAnalyzerPlugin({
analyzerMode: 'static',
openAnalyzer: false,
defaultSizes: 'parsed',
generateStatsFile: true,
statsOptions: { source: false }
})
关键是加上generateStatsFile和statsOptions这两个选项,可以让它不依赖浏览器直接生成报告文件。
另外建议你再安装一个依赖包:npm install puppeteer --save-dev,这是个无头Chrome,装了之后插件会自动使用它来生成报告,就不用担心环境问题了。
我之前在CI环境也遇到过类似情况,这么配完就正常了。如果还有问题可以看看具体报错信息,咱们再调整。
修改配置代码如下:
如果还有问题,检查一下Node版本是否太低。