一个 JAR 跑通 Java 代码评审全闭环 —— Jargus 百目开源项目发布

2026-09-29 7人浏览 0

文件下载 共 6 个下载地址
GitHub
立即下载
Gitee
gitee.com 立即下载
jargus.qqmu.com 立即下载
jargus.qqmu.com 立即下载
启动后浏览器打开
立即下载
B站视频演示
立即下载

一、项目介绍

Jargus 百目 是一个开箱即用的 Java 代码质量评审平台。正如其名“百目所视,无所遁形”,它的目标是用一个 JAR / 一个容器,把「扫描 → 评分 → 门禁 → 报告 → CI 阻断 → 邮件推送」的完整闭环塞进你的内网环境里。

它解决什么问题

团队开发中,代码质量管控长期面临几个现实困境:

  • 代码评审工具部署太重:独立服务器 + 数据库 + 专人运维,社区版功能受限,中文支持差;
  • PMD / SpotBugs / Checkstyle 只是“问题清单” :无评分、无门禁、无可视化报告与治理机制;
  • AI 编码助手各自为战:模型无法统一管理,也不与静态分析结果打通;
  • 国内环境额外诉求:内网隔离、信创数据库、国产大模型、中文汇报材料。

Jargus 据此以一个 JAR / 一个容器 交付完整闭环,内嵌 H2 开箱即用,完全离线运行。

二、优势与特点**1. 单 JAR / 单容器交付,内嵌数据库零外部依赖**

JAR 约 86 MB,内含 17 种数据库驱动与中文字体,仅需 JRE 17+ 即可运行。首次启动自动初始化 data / work / logs 三个目录,内嵌 H2 建表,不需要额外安装数据库或配置连接。Docker 镜像同样单容器交付,内置 Noto CJK / 文泉驿中文字体、非 root 运行、HEALTHCHECK、优雅停机。

2. 完全离线运行,适配内网与信创环境

全功能离线可用,AI 语义评审为可选增强,不联网也能完成从扫描到报告的全流程。支持达梦、人大金仓、openGauss、瀚高、海量、崖山等信创数据库驱动随包内置,共支持 18 类数据库。

3. 六大质量域 · 19 个内置检查器

基于 JavaParser AST + 符号求解与 ASM 字节码分析,本地引擎完全离线。覆盖:

[td]

质量域 典型检查项
缺陷检测 空指针引用链路追踪、资源泄露、空 catch 吞异常
安全扫描 SQL 注入、命令注入、路径穿越、不安全反序列化、XXE、SSRF、硬编码密钥、弱加密算法
架构约束 跨层直连 DAO、反向依赖、实体泄漏出接口边界
并发风险 单例 Bean 共享可变状态、静态 SimpleDateFormat 线程不安全、双重检查锁缺 volatile
风格与冗余 命名规范、魔法数字、超长行 / 方法、TODO 残留、CPD 式重复代码检测
依赖漏洞 解析 pom.xml / build.gradle 依赖树,内置 CVE 漏洞库离线比对

4. SonarQube 式五级评分与质量门禁

BLOCKER / CRITICAL / MAJOR / MINOR / INFO 五级分类,每级扣分权重、通过分数线、评级分界均可页面自定义、保存即时生效。评分公式为 score = 100 − Σ(数量 × 权重),门禁条件为 BLOCKER ≤ 限额 且 score ≥ 80。还附带技术债估算(如“8 小时 55 分”),让修复排期有据可依。

5. AI 深度评审(可选)

OpenAI 兼容 / Anthropic 双协议适配层,内置 12 个厂商模板(百炼 / 方舟 / DeepSeek / Kimi / 智谱 / 千帆 / Gemini / Claude / Ollama 等),API Key AES 加密。单条问题支持「AI 增强建议」(问题分析 / 修复方案 / 修复代码),支持批量深度评审与实时进度。

6. 报告与邮件推送

HTML / PDF 中文报告一键导出(内嵌中文字体),多 SMTP 发件配置(SSL / STARTTLS、测试发信、授权码 AES 加密)与收件人管理。扫描或 CI 触发器勾选「邮件通知」后,扫描完成自动推送 HTML 摘要正文 + PDF 报告附件,失败也发通知,送达状态在扫描历史可见。

7. CI/CD 集成

Webhook 触发扫描(按平台约定校验 HMAC 签名),完成后自动回写 commit status 与 MR/PR 评论,流水线按门禁结论阻断合并。支持 GitHub / GitLab / Gitee / 自建平台,支持私有仓库凭据。

8. 原生中文 · MIT 开源可商用

界面、规则、报告原生中文,Thymeleaf 服务端渲染,无 Vue / npm 构建链,零 CDN 依赖。MIT 协议开源,可免费商用。

三、技术栈[td]

层次 选型
后端 Spring Boot 3.2.5 · Java 17 · MyBatis-Plus 3.5.5 · H2 内嵌 + 17 种驱动内置 · 动态多数据源
静态分析 JavaParser 3.25(AST + 符号求解)· ASM 9.6 · 自研 CPD 式重复代码指纹
AI 接入 OpenAI 兼容 / Anthropic 双协议适配层
报告与邮件 OpenPDF(矢量中文 PDF)· Thymeleaf HTML 报告 · Spring Mail
安全 JWT · BCrypt · AES 配置加密 · OAuth2 远端认证
前端 Thymeleaf SSR · 原生 JavaScript · 零 CDN
部署 单 JAR · Docker 多阶段(内置中文字体、非 root、HEALTHCHECK)

五、源码获取

  • GitHub:
  • Gitee:
  • 官网:

当前最新版本 v2.0.3(2026-09-27 发布),MIT 开源可商用。

六、部署文档

完整部署指南:

三种部署方式任选其一:

方式一:单 JAR 直跑(推荐首试)

java -jar jargus-2.0.3.jar

启动后浏览器打开 admin / 123456(管理员)、view / 123456(只读),登录后立即修改密码。生产环境需覆盖 JWT 密钥与 AES 密钥。

部署视频教程

B站视频演示:

七、最后

Jargus 的定位很明确:适合内网离线、信创环境、希望以最小运维成本获得代码质量全闭环的团队。它不追求成为“大而全”的多语言平台,而是聚焦 Java 生态,把单 JAR 离线交付 + 内网全闭环这件事做到极致。不同产品定位不同,用户可按需选择。