用途:这是一个交互式 SKILL,帮助在 Maven 项目中以咨询式、问题驱动的方式添加提升代码质量、安全性和领域建模的依赖。覆盖 JSpecify(空值注解,provided 作用域)、Error Prone + NullAway(编译期空值检查的增强静态分析)、VAVR(Try/Either 与不可变集合的函数式编程)、ArchUnit(架构规则强制,test 作用域)、JavaMoney(JSR 354 与 Moneta 的 Money/Currency API)。
主要能力与用法:添加依赖前必须先运行 ./mvnw validate 或 mvn validate,若校验失败则停止并请用户修复,不得继续。随后先执行 SKILL.md 内嵌的问题流程:先问一个合并的依赖选择问题,再按所选选项追问必要的条件问题,只读取用户所选依赖对应的参考文件。若选择 Error Prone + NullAway,需同时选择 JSpecify(除非项目已有等价空值注解),并需提供主项目包名(点号格式,如 com.example.myproject)以配置 NullAway。选择 None 则不添加任何依赖族参考。
适用场景:需要为 Java/Maven 项目引入空值安全注解、编译期静态分析、函数式编程支持、架构治理或货币金额处理时。
限制:仅添加用户选中的依赖、属性、作用域、插件配置与支持文件,并保留现有 pom.xml 结构;不得读取或应用未选中的依赖族参考;需报告权衡与后续校验建议。详细示例与约束见 references/111-java-maven-dependencies-jspecify.md、-vavr.md、-archunit.md、-javamoney.md。