Webpack - 省略 LICENSE.txt 文件的创建

pat*_*per 21 webpack

我正在使用 Webpack 5,并且与bundle.js文件一起bundle.js.LICENSE.txt创建了一个不需要的文件,因为https://github.com/codepunkt/webpack-license-plugin用于此任务。

有没有什么办法可以配置Webpack来省略LICENSE.txt文件的创建?

我在 GitHub 上搜索了 webpack 文档、SO 和几个问题,但没有找到任何有用的信息。

Sam*_*mmi 47

要正确删除许可证文件和捆绑包内的注释,请使用:

optimization: {
  minimize: true,
  minimizer: [
    new TerserPlugin({
      extractComments: false,
      terserOptions: {
        format: {
          comments: false,
        },
      },
    }),
  ],
},
Run Code Online (Sandbox Code Playgroud)

https://github.com/webpack-contrib/terser-webpack-plugin#remove-comments

  • @KrisztiánBalla 没有人应该尝试反编译缩小的文件来弄清楚该软件的许可模型是什么。缩小文件的重点是提供最少量的代码。 (4认同)
  • @AndrewKoster,你必须 `npm install terser-webpack-plugin --save-dev` 和 `const TerserPlugin = require("terser-webpack-plugin");` (来自 https://webpack.js.org/plugins /terser-webpack-插件) (2认同)

Moh*_*yan 20

添加extractComments: falsewebpack.config.js


const TerserPlugin = require('terser-webpack-plugin');
.
.
.
module.exports = {
.
.
.
  optimization: {
    minimizer: [new TerserPlugin({
      extractComments: false,
    })],
  },
.
.
.
};
Run Code Online (Sandbox Code Playgroud)

  • 仅供参考:这仍然在捆绑包本身中留下了许可证注释。 (8认同)

小智 13

webpack 文档只有这个 https://webpack.js.org/plugins/terser-webpack-plugin/#extractcomments

extractComments: false
Run Code Online (Sandbox Code Playgroud)

这帮助我摆脱了 LICENSE.txt