用途:ddd4j-bom 用于 ddd4j 的 Maven 治理,帮助判断某项变更应归属 ddd4j-parent(构建、插件、发布默认值)、ddd4j-dependencies(第三方依赖版本)还是 ddd4j-bom(面向消费者的 ddd4j 坐标)。适配器项目(Boot、Javalin、Quarkus、Cloud)的 BOM 只管理各自生态版本。
主要能力:区分 parent、dependencies、BOM 的职责;处理 Maven 3/4 与 POM 4.0/4.1 差异(4.0 用 modules/module,4.1 用 subprojects/subproject);诊断 BOM 导入顺序与属性泄漏导致的版本冲突;跨 1.0.x、2.0.x、3.0.x 维护线对齐依赖属性;验证发布线在干净本地仓库中可消费。
使用方式:先确定变更范围与所有权,只编辑拥有该变更的文件;按模型正确编辑,不在具体模块中重复 ddd4j-dependencies 已管理的第三方版本;运行验证脚本(scripts/test_maven4_model_contract.py、test_dependency_property_layout.py、test_bom_import_conflicts.py、test_dependency_alignment.py、check-bom-alignment.sh);在消费者项目生成 help:effective-pom,并用空本地仓库执行 dependency:go-offline 与 compile -U 验证消费;报告维护线、JDK、Maven、POM Model、版本所有者、effective POM 与消费状态,并标注证据等级。
适用场景:新增模块或属性、迁移或检查 Maven 模型、排查 BOM 导入顺序或属性泄漏引发的版本冲突、跨维护线对齐依赖、验证发布可消费性。
限制:不用于选择 ddd4j 版本线或适配器项目(应使用 ddd4j-version-selection),不用于运行时装配(应使用 ddd4j-runtime),不调试业务代码,不静默改版本、强制发布或跳过 enforcer。1.0.x/2.0.x 保持 POM 4.0/Maven 3,3.0.x 使用 POM 4.1/Maven 4。不打印 settings.xml、服务器密码或私有仓库令牌。资料未提供具体价格与平台信息。