@cyclonedx/webpack-plugin

中文文档
5.3.3发布于 2026/08/11Apache-2.0TypeScriptCommonJS构建来源已验证近 30 天下载 12.8万

从 Webpack 项目创建 CypromiseDX 软件软件单

中文使用文档
文档目录12 节
  1. 所需资源
  2. 安装
  3. 使用量
  4. 选项配置( C)
  5. 示例
  6. 对 IETF /. 熟知/ sbom 的支持
  7. 以角为单位使用
  8. 用反应
  9. 与 Vue 一起使用
  10. 内部
  11. 发展和贡献
  12. 许可证

旋风DX 网络软件包 插件

shield_npm-version shield_gh-workflow-test shield_coverage shield_ossf-best-practices shield_license
shield_website shield_slack shield_groups shield_twitter-follow


此插件用于 网络软件包 创建一个 旋风DX 包含所有捆绑依赖的软件清单.
这很可能是最准确,最完整的基于网页包的SBOM生成器.

此插件使用由 : 网络软件包 以创建仅包含依赖关系的依赖图 实际使用的 树摇) (中文(简体) ).

生成的 SBOM 文件如下 正式规格和标准。 。 。 .

所需资源

  • 节点.js >= 20.18
  • 网络软件包 ^5

然而,这个插件有更古老的版本,支持

  • 节点.js v8.0.0 或更高级
  • 网络软件包 v4.0.0 或 更高级

安装

npm i -D @cyclonedx/webpack-plugin
yarn add -D @cyclonedx/webpack-plugin

使用量

new CycloneDxWebpackPlugin(options?: object)

选项配置( C)

名称类型默认说明
specVersion{string}
其中一个: "1.2", (中文(简体) ), "1.3", (中文(简体) ), "1.4", (中文(简体) ), "1.5", (中文(简体) ), "1.6", (中文(简体) ), "1.7"
"1.6"哪个版本 气旋DX光谱 用来使用.
支持的值取决于安装的依赖性 旋风DX-javascript-图书馆。 。 。 .
reproducibleResults{boolean}false是否要多走一英里, 使输出可复制 .
可复制性可能导致时间价值和随机价值的损失.
validateResults{boolean}true是否验证 BOM 结果 .
如果不符合要求,则取消验证。 要求数 过渡性可选依赖性。 。 。 .
outputLocation{string}"./cyclonedx"将输出写入路径 。 路径相对 网络软件包'总输出路径.
includeWellknown{boolean}true是否写出 Wellknowns .
wellknownLocation{string}"./.well-known"写《名人录》的路径 路径相对 网络软件包'总输出路径.
rootComponentAutodetect{boolean}true是否尝试对根元件进行自动检测 .
尝试寻找最近的 package.json 并且从中构建一个 CircleDX 组件,从而可以分配到 bom.metadata.component。 。 。 .
rootComponentType{string}"application"设置根组件的类型 .
见 有效数值列表。支持的值取决于 旋风DX-javascript-图书馆语句 ComponentType。 。 。 .
rootComponentName选项 {string}undefined若为 rootComponentAutodetect 的“名称” package.json。 。 。 .
rootComponentVersion选项 {string}undefined若为 rootComponentAutodetect 的“版本” package.json。 。 。 .
rootComponentVCS选项 {string}undefined若为 rootComponentAutodetect 已禁用或版本控制系统未在 package.json,然后将该值用作 URL Root Content 的外部参考文献 “vcs”类型.
rootComponentBuildSystem选项 {string}undefined设置 URL 为 Root Content 的外部参考文献 类型“构建系统”.
这种行为是不管 rootComponentAutodetect状况.
collectEvidence{boolean}false是否收集(许可证)证据并附在由此产生的SBOM上.

示例

在你身边 网络包配置 添加 CirponDX 插件 :

const { CycloneDxWebpackPlugin } = require('@cyclonedx/webpack-plugin');

/** @type {import('@cyclonedx/webpack-plugin').CycloneDxWebpackPluginOptions} */
const cycloneDxWebpackPluginOptions = {
  specVersion: '1.7',
  outputLocation: './bom'
}

module.exports = {
  // ...
  plugins: [
    new CycloneDxWebpackPlugin(cycloneDxWebpackPluginOptions)
  ]
}

参见扩展 实例。 。 。 .

对 IETF /. 熟知/ sbom 的支持

旋风DX 网络软件包 插件支持将 CirlowDX SBOM 放置在预定义的位置, 具体在 /.well-known/sbom。默认启用此选项。 行为可以通过超越值来改变 联 合 国 includeWellknown 财务报告和审定财务报表 wellknownLocation。 。 。 .
见 草稿- ettf- opsawg- sbom- 访问 关于该规格的更多信息,目前是综合贸易工作队草案.

在你身边 网络包配置 添加 CirponDX 插件 :

const { CycloneDxWebpackPlugin } = require('@cyclonedx/webpack-plugin');

/** @type {import('@cyclonedx/webpack-plugin').CycloneDxWebpackPluginOptions} */
const cycloneDxWebpackPluginOptions = {
  includeWellknown: true,
  wellknownLocation: './.well-known'
}

module.exports = {
  // ...
  plugins: [
    new CycloneDxWebpackPlugin(cycloneDxWebpackPluginOptions)
  ]
}

以角为单位使用

角质 用途 网络软件包 在引擎盖下。 因此,可以通过使用 @angular-buildingers/custom-webpack。 。 。 .
例如: 与Angular17/webpack5的结合。 。 。 .

用反应

反应 用途 网络软件包 在引擎盖下。 因此,可以整合这个插件.
例如: 与 React18/webpack 合并。 。 。 .

与 Vue 一起使用

阴道 用途 网络软件包 在引擎盖下。 因此,可以整合这个插件.
例如: 与 Vue2/webpack 合并 5。 。 。 .

内部

这个 网络软件包 插件使用 旋风DX库 生成实际数据结构.

除了班级 CycloneDxWebpackPlugin 和接口 CycloneDxWebpackPluginOptions, (中文(简体) ),
这个 网络软件包 插件会 没有 披露任何额外的 公开 API或类 - 所有代码都是为了内部的,在版本升级时可能会不经任何通知而更改.

发展和贡献

随意打开问题,错误报告或拉取请求.
见 捐款 详细文件.

许可证

根据Apache 2.0许可证的规定,允许修改和再分配.
见 自由主义 完整许可证存档.

版本与发布记录

@cyclonedx/webpack-plugin 共发布 62 个版本,首次发布于 2021/09/12;过去 12 个月发布了 13 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
5.3.3latest2026/08/112 个月前
5.3.3-rc.7unstable-prerelease2026/08/112 个月前
5.3.3-rc.42026/07/283 个月前
5.3.3-rc.32026/07/283 个月前
5.3.3-rc.22026/07/283 个月前
5.3.3-rc.12026/07/283 个月前

关于 @cyclonedx/webpack-plugin 的常见问题

@cyclonedx/webpack-plugin 是什么?

从 Webpack 项目创建 CypromiseDX 软件软件单

如何安装 @cyclonedx/webpack-plugin?

在项目目录运行 npm install @cyclonedx/webpack-plugin,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:webpack(^5)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@cyclonedx/webpack-plugin 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@cyclonedx/webpack-plugin 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

@cyclonedx/webpack-plugin 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=20.18.0。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@cyclonedx/webpack-plugin 可以商用吗?

@cyclonedx/webpack-plugin 使用 Apache-2.0 许可。宽松许可:允许商业使用、修改和再分发,并附带明确的专利授权;分发时需保留许可与 NOTICE 文件,修改过的文件要注明改动。以上为概括,不构成法律意见,请以许可原文为准。

@cyclonedx/webpack-plugin 的下载量有多少?

根据 npm 官方下载统计,@cyclonedx/webpack-plugin 在 2026/10/11 – 2026/11/09 这 30 天内被下载 128,228 次,日均约 4,274 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@cyclonedx/webpack-plugin 还在维护吗?

最新版本 5.3.3 发布于 2026/08/11(2 个月前);至今共发布 62 个版本,其中过去 12 个月发布了 13 个;首次发布于 2021/09/12。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。