webpack - compiler.getLogger 不是一个函数

标签 webpack copy webpack-dev-server copy-webpack-plugin

我将 copy-webpack-plugin4.6.0 升级为 6.0.2我改变了我的代码

plugins: [
    new CopyWebpackPlugin([{
      from: clientAssetPath,
      to: paths.STATICS,
      ignore: [ '.gitkeep' ],
    }], {
      debug: 'info'
    }),
    new HtmlWebpackPlugin({
      ...htmlPluginOptions,
    }),
    new DynamicCDNWebpackPlugin({
      resolver: unpkgResolver,
    }),
  ]
plugins: [
    new CopyPlugin([{
      patterns: [{
        from: clientAssetPath,
        to: paths.STATICS,
        noErrorOnMissing: true
      }]
    }]),
    new HtmlWebpackPlugin({
      ...htmlPluginOptions,
    }),
    new DynamicCDNWebpackPlugin({
      resolver: unpkgResolver,
    }),
  ]
official website 所示
但它开始抛出以下错误:compilation.getLogger is not a function当我调试它时,我发现错误来自 node_modules/copy-webpack-plugin/dist/index.js enter image description here
不知道是什么问题

最佳答案

它需要升级 webpack 以及 https://github.com/webpack-contrib/copy-webpack-plugin/blob/master/package.json#L41
我可以通过以下两种方式解决问题

  • copy-webpack-plugin 降级到 5.1.1 并使用旧的构造函数为我解决了这个问题。
  • 升级 web-pack 并解决由它引起的其他语法更改
  • 关于webpack - compiler.getLogger 不是一个函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62519204/

    相关文章:

    javascript - .Net Core 2 SPA/Angular 模板 - 渲染全局 CSS

    css - 使用 JS 小部件时忽略父样式

    copy - 雪花 COPY : how to insert load time automatically when I use the MATCH_BY_COLUMN_NAME option

    c++ - 如果双端队列不够大,为什么通过 std::copy 成功将 std::deque 对象附加到自身?

    Microsoft Edge 浏览器的 Angular-Cli v1.6.6 Source Map 设置

    javascript - 使用 karma + babel + webpack 和 bundle 跟踪错误

    typescript - 为什么 View 不是在 Aurelia 生产构建模式下创建的

    c++ - 如何将分号 (;) 分隔的文件中的单词复制到 C++ 中的数组中?

    reactjs - webpack-dev-middleware@1.12.2 需要 webpack@^1.0.0 || 的对等点^2.0.0 || ^3.0.0 但没有安装

    google-chrome-devtools - 使用 webpack-dev-server 时,为什么 Chrome 会在每秒请求之前等待?