giterlizzi/perl-SBOM-CycloneDX

GitHub: giterlizzi/perl-SBOM-CycloneDX

为 Perl 语言提供 CycloneDX 标准的 SBOM 文档程序化生成、编辑与校验能力。

Stars: 1 | Forks: 1

[![Release](https://img.shields.io/github/release/giterlizzi/perl-SBOM-CycloneDX.svg)](https://github.com/giterlizzi/perl-SBOM-CycloneDX/releases) [![Actions Status](https://github.com/giterlizzi/perl-SBOM-CycloneDX/workflows/linux/badge.svg)](https://github.com/giterlizzi/perl-SBOM-CycloneDX/actions) [![License](https://img.shields.io/github/license/giterlizzi/perl-SBOM-CycloneDX.svg)](https://github.com/giterlizzi/perl-SBOM-CycloneDX) [![Starts](https://img.shields.io/github/stars/giterlizzi/perl-SBOM-CycloneDX.svg)](https://github.com/giterlizzi/perl-SBOM-CycloneDX) [![Forks](https://img.shields.io/github/forks/giterlizzi/perl-SBOM-CycloneDX.svg)](https://github.com/giterlizzi/perl-SBOM-CycloneDX) [![Issues](https://img.shields.io/github/issues/giterlizzi/perl-SBOM-CycloneDX.svg)](https://github.com/giterlizzi/perl-SBOM-CycloneDX/issues) [![Coverage Status](https://coveralls.io/repos/github/giterlizzi/perl-SBOM-CycloneDX/badge.svg)](https://coveralls.io/github/giterlizzi/perl-SBOM-CycloneDX) # SBOM::CycloneDX - 用于 CycloneDX 的 Perl 扩展 ## 概要 ``` my $bom = SBOM::CycloneDX->new; my $root_component = SBOM::CycloneDX::Component->new( type => 'application', name => 'MyApp', licenses => [SBOM::CycloneDX::License->new('Artistic-2.0')], bom_ref => 'MyApp' ); my $metadata = $bom->metadata; $metadata->tools->add(cyclonedx_tool); $metadata->component($root_component); my $component1 = SBOM::CycloneDX::Component->new( type => 'library', name => 'some-component', group => 'acme', version => '1.33.7-beta.1', licenses => [SBOM::CycloneDX::License->new(name => '(c) 2021 Acme inc.')], bom_ref => 'myComponent@1.33.7-beta.1', purl => URI::PackageURL->new( type => 'generic', namespace => 'acme', name => 'some-component', version => '1.33.7-beta.1' ), ); $bom->components->add($component1); $bom->add_dependency($root_component, [$component1]); my $component2 = SBOM::CycloneDX::Component->new( type => 'library', name => 'some-library', licenses => [SBOM::CycloneDX::License->new(expression => 'GPL-3.0-only WITH Classpath-exception-2.0')], bom_ref => 'some-lib', ); $bom->components->add($component2); $bom->add_dependency($root_component, [$component2]); my @errors = $bom->validate; if (@errors) { say $_ for (@errors); Carp::croak 'Validation error'; } say $bom->to_string; ``` ## 安装 使用 Makefile.PL: 要安装 `SBOM-CycloneDX` 发行版,请运行以下命令。 ``` perl Makefile.PL make make test make install ``` 使用 `App::cpanminus`: ``` cpanm SBOM::CycloneDX ``` ## 文档 - `perldoc SBOM::CycloneDX` - https://metacpan.org/release/SBOM-CycloneDX - https://cyclonedx.org/ ## 版权 - 版权所有 2025-2026 © Giuseppe Di Terlizzi
标签:CycloneDX, LLM防护, Perl, SBOM, 依赖管理, 硬件无关, 组件分析, 软件开发