安装Blacksmith Engine 2D运行npm start报webpack-cli/bin/config-yargs缺失错误
报错根因
这个Cannot find module 'webpack-cli/bin/config-yargs'的MODULE_NOT_FOUND报错,核心是Black-Template内置的webpack-dev-server 3.x版本,和npm安装时自动拉取的新版webpack-cli(4.0+)存在依赖路径不兼容——webpack-cli从4.0版本开始就移除了旧版dev-server依赖的bin/config-yargs路径文件,并非按照官方步骤操作有误,本质是官方模板的依赖版本锁定存在生态适配缺口。
修复方案
可根据自身需求选择任意一种适配方案:
方案一:最小改动适配现有模板(推荐)
不需要修改模板内的任何配置文件,直接在项目根目录(也就是报错栈路径下的Black-Template文件夹内)执行降级命令:npm install webpack-cli@3.3.12 --save-dev
安装完成后直接执行npm start即可正常启动项目,这个版本组合是官方模板开发阶段验证过的兼容搭配。
方案二:升级到新版webpack生态组合
如果需要使用新版webpack-cli和dev-server的功能,需要按步骤操作:
- 先卸载当前项目内的旧版本依赖:
npm uninstall webpack-dev-server webpack-cli - 安装版本匹配的新版依赖:
npm install webpack-dev-server@4.15.1 webpack-cli@5.1.4 --save-dev - 手动修改项目内的
webpack.config.js配置,把旧版devServer配置中的contentBase字段替换为新版的static字段,同步调整热更新配置项,避免配置不兼容触发二次报错。
排障补充
- 所有webpack相关依赖必须安装在项目本地的
node_modules目录下,不要用全局安装的webpack包运行项目,全局和本地版本不一致会触发同类模块路径找不到的错误。 - 如果执行完上述步骤依然报路径错误,可以删除项目根目录下的
node_modules文件夹、package-lock.json文件,重新执行npm install拉取干净的全量依赖后再启动,避免旧依赖缓存残留导致的路径匹配异常。
内容的提问来源于stack exchange,提问作者G-programmer
相关产品推荐
相关产品推荐

