常见问题

12 个高频问题,答案全部对应真实功能与默认配置;还有疑问欢迎去 GitHub Issues 提

只支持 Java 吗?

目前专注 Java 单语言:19 个检查器围绕 Java 生态做深做透(Spring 最佳实践、pom/gradle 依赖解析、JavaParser AST + ASM 字节码)。多语言仓库建议搭配 SonarQube 等多语言引擎,本项目作为 Java 侧的深度补充。

必须联网吗?代码会外传吗?

不必须。静态扫描、评分门禁、报告导出全部本地完成,零外部请求;OSV 在线漏洞增强默认关闭;AI 评审是可选项。只要不开 AI、不开 OSV,代码与数据完全不出内网。

不配 AI 能用吗?配了烧多少 token?

能。不配置任何 AI 厂商,19 个检查器、评分门禁、报告与 CI 集成一切照常。

AI 是逐问题按需触发的三段式建议(问题分析 / 修复方案 / 修复代码),只发送问题行附近的代码上下文而非整个仓库,也可以只对 BLOCKER / CRITICAL 做批量评审控制成本;用 Ollama / vLLM / LocalAI 本地模型则 token 成本为零。

默认密码安全吗?生产要改什么?

默认账号 admin/123456 与 view/123456 仅用于首次登录,登录后必须立即修改密码。

生产环境还必须覆盖两个内置占位密钥:APP_JWT_SECRET(JWT 签名)与 APP_CRYPTO_KEY(AES 配置加密,16 字符)。密码用 BCrypt 存储,数据库密码 / API Key / 仓库令牌全部 AES 加密落库。

支持哪些数据库?信创库可以吗?

元数据库默认 H2 内嵌零安装;MySQL / PostgreSQL / Oracle 与达梦 DM / 人大金仓 / openGauss 信创驱动全部随包内置;其它数据库可在页面上传 JDBC 驱动接入(uuid 隔离存放)。切换可视化操作,自动建表迁移,带连通性测试。

H2 内嵌和外接数据库怎么选?

个人试用、教学演示直接 H2:零配置,数据落在 data/ 目录文件里。团队共用、多实例部署或需要 DBA 统一备份时切外接库(MySQL / PostgreSQL 等),页面填连接串测试连通即可切换,历史数据按新库自动建表。

评分和门禁能改成我们团队的标准吗?要重启吗?

能,且不用重启。每级扣分值(默认 BLOCKER −25 / CRITICAL −15 / MAJOR −5 / MINOR −1 / INFO 0)、门禁通过线(默认 80)、阻断上限(默认 0)、评级分界(优秀 ≥90 / 良好 ≥75 / 一般 ≥60)全部在「质量门禁」页自定义,保存即时生效,已有扫描结果立刻按新规则重算,无需重扫。

能接入 CI/CD 并阻断流水线吗?

能。「CI/CD 集成」页创建 Webhook 触发器与访问令牌,GitHub / GitLab / Gitee / Jenkins 推送后自动扫描;完成后回写 commit status、在 MR/PR 上评论评分 + 门禁结论 + Top 问题;流水线读取 commit status,门禁不过即阻断合并。示例见快速上手第 ⑤ 步。

和 SonarQube 是什么关系?

独立开源项目,无代码或商业关联,评分体系对标其五级严重度思想。差异在:SonarQube 是需运维的平台服务、规则生态多语言且更庞大;本项目是单 JAR 即起、中文原生、内置 AI 增强评审与信创数据库支持的 Java 专精闭环工具。详见优势对比页的 13 项横评与诚实定位。

重复代码检测误报多吗?

做了专门降噪:CPD 式 Token 指纹比对,自动排除 getter/setter、构造方法等样板结构,只报真正有复制粘贴嫌疑的块;阈值可在检查器配置页调整。其余检查器也有调用图与符号求解辅助降误报,仍不满意可用行级 / 规则级忽略(按规则码 / 路径 / glob / 行号,忽略原因留痕)。

依赖漏洞库怎么更新?

内置 CVE 漏洞库随版本发布,离线可用,升级 JAR 即更新。需要更新的漏洞数据时可开启可选的 OSV 在线增强(默认关闭),联网比对官方漏洞库;完全隔离的内网保持关闭即可。

MIT 协议可以商用吗?

可以。MIT 是最宽松的开源协议之一:免费商用、修改、分发、闭源集成都允许,只需保留版权声明与许可文本。不需要开放你自己的代码,也没有任何按人数 / 按仓库的收费项。