← ClaudeAtlas

java-coding-qualitylisted

Java 代码质量与安全的工具化门禁助手。在完成任何 Java / Spring Boot 代码的编写、修改、 重构后,或用户要求提交前检查、代码写完验证、代码审查 / code review、修复扫描告警、 质量门禁、静态扫描、安全扫描(SQL 注入 / 弱加密 / 路径穿越 / XXE / SSRF / 硬编码密钥)时使用本技能—— 无论用户是否提到具体工具(PMD / SpotBugs / FindSecBugs / Java 规约 / lint / static analysis)。 本技能用 JVM 插件链(PMD 7 + 自带规则集、SpotBugs + FindSecBugs)实跑扫描并按严重级修复, 直到 Blocker/Critical 清零才算交付。 完成任意 Java 代码任务后建议激活本技能做交付前门禁。 不适用:非 JVM 语言、纯前端、无 Maven/Gradle 的项目、DDL / 架构设计。
BaixuanZhu/skills · ★ 0 · Code & Development · score 78
Install: claude install-skill BaixuanZhu/skills
# Java 质量门禁 面向 Java 代码**交付前验证**的工具门禁助手。用 JVM 插件链(PMD 7 + 自带规则集、SpotBugs + FindSecBugs)实跑扫描并按严重级修复,直到 **Blocker/Critical 清零**才算交付。 ## 三条铁律 1. **工具兜底,不再造规范**:约束靠实跑的静态扫描(PMD 7 + SpotBugs),不重复堆砌编码规则;发现的告警若属编码手法问题,用本技能 references 速查表修复。 2. **零侵入优先**:默认在项目根建 `.qualitygate/` 包装工程扫描,**项目自身 pom 零改动**;通过一次后才**询问一次**是否持久化进项目 pom,拒绝则不再问。 3. **安全告警不自行豁免**:误报抑制必须附注释理由并经用户确认;FindSecBugs 安全类告警 Agent 一律不得擅自 suppress。 ## 工具链 | 层 | 工具 | 坐标(已实跑核实 2026-07) | 作用 | |---|---|---|---| | 规范层 | maven-pmd-plugin(PMD 7 内核) | `org.apache.maven.plugins:maven-pmd-plugin:3.27.0`(默认 PMD 7.14.0) | 源码级规范:空 catch、魔法值、命名、线程池、BigDecimal 等 | | 规则集 | 技能自带 `assets/pmd7-ruleset.xml` | 随技能分发,无外部依赖 | 编码强制项(内置规则调参 + XPath 自定义) | | bug/安全 | SpotBugs + FindSecBugs | `com.github.spotbugs:spotbugs-maven-plugin:4.9.6.0` + `com.h3xstream.findsecbugs:findsecbugs-plugin:1.14.0` | 字节码级 bug 模式 + 138 类安全漏洞 | ## 第 0 步:环境探测(激活时先执行) 读 `pom.xml` / `build.gradle` 一次性探测(读不到则一次问全,勿分多轮): 1. **构建工具**:Maven(有 `pom.xml`)还是 Gradle;`mvn -v` / `gradle -v` 是否可用。 2. **目标 JDK**:`maven.compiler.release` / `<source>` / `sourceCompatibility`——决定 PMD 的 `targetJdk` 与编译参数(SpotBugs 需先编译)。 3. **项目是否已配质量插件**:pom/gradle 中是否已有 `maven-pmd-plugin` / `spotbugs-maven-plugin` / `checkstyle` / `sonar`—— - **已配 → 直接复用项目自己的配置与规则集**,不引入技能默认规则集(尊重团队既有基线);仅在项目无规则集时才用技能自带的。 - **未配 → 走「接入方式」用技能自带规则集扫描**。 4. **无 Maven/Gradle 或不可用** → 告知无法实跑门禁,降级为「按 references 做人工对照检查」,并如实说明未做运行时验证。 ## 接入方式(零侵入优先) **默认(零侵入)**:在项目根建 `.qualitygate/` 目录,写入包装 pom + 从技能 `assets/`