webpack报错:ERROR in TypeError: The ‘compilation‘ argument must be an instance of Compilation

12 篇文章 0 订阅

一、JavascriptModulesPlugin.js:119 getCompilationHooks

[fore-end]/[webpack]/lib/javascript/JavascriptModulesPlugin.js:119:10

  • CommonJsChunkFormatPlugin.js:30
    [fore-end]/[webpack]/lib/javascript/CommonJsChunkFormatPlugin.js:30:19

  • Hook.js:14 Hook.CALL_DELEGATE [as _call]
    [npm]/[webpack]/[tapable]/lib/Hook.js:14:14

  • Compiler.js:987 Compiler.newCompilation
    [npm]/[webpack]/lib/Compiler.js:987:30

  • Compiler.js:1029
    [npm]/[webpack]/lib/Compiler.js:1029:29

    [npm]/[webpack]/[tapable]/lib/Hook.js:18:14

  • Compiler.js:1024 Compiler.compile
    [npm]/[webpack]/lib/Compiler.js:1024:28

  • Compiler.js:495 Compiler.runAsChild
    [npm]/[webpack]/lib/Compiler.js:495:8

webpack 5.11.0 compiled with 1 error in 134 ms

二、报错原因

webpack5和html-webpack-plugin4二者之间的版本兼容问题。

三、解决方案(我用的是第二种)

第一种是将webpack的版本降到4点几的版本

首先卸载之前安装的webpack

npm uninstall webpack -g

之后再安装指定的webpack版本

npm install webpack@4.44.2 -g

在安装html-webpack-plugin

npm i --save-dev html-webpack-plugin

在webpack.config.js中设置:

const {resolve} = require('path')
const HtmlWebpackPlugin = require(require.resolve('html-webpack-plugin', { paths: [process.cwd()] }));

然后运行webpack指令

第二种是改变html-webpack-plugin的版本

首先卸载html-webpack-plugin

npm uninstall html-webpack-plugin

然后安装指定版本的html-webpack-plugin

npm i html-webpack-plugin@5.0.0-alpha.9

然后运行webpack指令

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值