概述
许可证义务在发布时才被发现,往往意味着返工甚至撤回。扫描依赖并收集许可证标识、分类义务、把不兼容或未知项升级评审、生成必需声明,可把合规从发布后的救火前置为可持续的流程。
关键步骤
- 扫描依赖并收集许可证标识。
- 分类义务:宽松、copyleft 或未知。
- 标记不兼容或未知许可证以供评审。
- 生成许可证要求的声明与归属。
验证
- 每个依赖都有已知许可证。
- 发布产物不含未批准的 copyleft 或未知许可证依赖。
- 声明包含全部必需归属。
- 被标记许可证有决策记录。
决策点
copyleft 应结合法律评审与用途判定,内部使用与对外分发要求不同;未知许可证应阻断直至识别清楚。
适用范围
本条目围绕「开源许可证合规工作流」给出可复制的步骤、验证方式与常见问题,适合需要按此流程落地的工程团队。执行时请结合自身上下文调整命令与阈值,并在变更前后留存证据,便于后续复核与回滚。
npx license-checker --summary
# or
syft $IMAGE -o spdx-json | jq '[.packages[].licenseConcluded]'