使用文档

快速上手 AutoJava,提升你的开发效率

1 快速开始

环境要求

Java 17 或更高版本

下载与安装

# 1. 下载 JAR 包(从首页点击下载按钮)

# 2. 验证安装
java -jar autojav-cli-1.0.0.jar --help

# 3. 查看版本
java -jar autojav-cli-1.0.0.jar --version

提示:无需安装,直接使用 JAR 包即可运行。确保已安装 Java 17 或更高版本。

2 配置 AI 服务(可选)

如需使用 AI 功能,需要配置 API 密钥。支持 Kimi、通义千问、文心一言等。

基础配置

# 配置 Kimi API 密钥
java -jar autojav-cli-1.0.0.jar config set ai.api.key sk-your-api-key

# 配置 AI 服务商(kimi/qwen/ernie/spark)
java -jar autojav-cli-1.0.0.jar config set ai.service.type kimi

# 查看所有配置
java -jar autojav-cli-1.0.0.jar config list

高级配置

# 设置 AI 模型名称
java -jar autojav-cli-1.0.0.jar config set ai.model.name moonshot-v1

# 设置 AI 温度参数(0.0-1.0,默认0.3)
java -jar autojav-cli-1.0.0.jar config set ai.temperature 0.5

# 设置 API 请求超时时间(秒)
java -jar autojav-cli-1.0.0.jar config set ai.timeout.seconds 60

提示:API 密钥仅存储在本地,不会上传到任何服务器。免费版无需配置 AI 即可使用基础功能。

3 代码审计

基础审计(免费版可用)

# 审计单个文件
java -jar autojav-cli-1.0.0.jar audit UserService.java

# 递归审计整个目录
java -jar autojav-cli-1.0.0.jar audit src/ -r

# 输出审计报告到文件
java -jar autojav-cli-1.0.0.jar audit src/ -r -o report.txt

AI 深度审计(团队版+)

# 使用 AI 进行深度分析
java -jar autojav-cli-1.0.0.jar audit UserService.java -ai

# AI 深度审计并生成详细报告
java -jar autojav-cli-1.0.0.jar audit src/ -r -ai -o ai-report.txt

支持的审计规则

  • 空指针异常风险检测
  • SQL 注入风险检测
  • 资源未关闭检测
  • 空集合/数组遍历检测
  • 更多规则持续更新中...

4 使用示例

我们提供了完整的测试案例,帮助你快速了解 AutoJava 的功能和使用方法。测试案例位于项目根目录的 examples/ 目录下。

# 查看示例目录
ls examples/

# 批量审计所有示例
java -jar autojav-cli-1.0.0.jar audit examples/ -r

# 生成审计报告
java -jar autojav-cli-1.0.0.jar audit examples/ -r -o examples-report.txt

示例 1: SQL 注入问题

展示如何检测和修复 SQL 注入风险问题。

# 审计 SQL 注入示例
java -jar autojav-cli-1.0.0.jar audit examples/sql-injection/UserService.java

# AI 深度分析并修复
java -jar autojav-cli-1.0.0.jar audit examples/sql-injection/UserService.java -ai -f

问题类型:SQL 注入风险

影响:可能导致数据库被恶意操作

示例 2: 空指针异常问题

展示如何检测和修复空指针异常风险。

# 审计空指针异常示例
java -jar autojav-cli-1.0.0.jar audit examples/null-pointer/OrderService.java

# AI 深度分析并修复
java -jar autojav-cli-1.0.0.jar audit examples/null-pointer/OrderService.java -ai -f

问题类型:空指针异常风险

影响:可能导致程序崩溃

示例 3: 资源未关闭问题

展示如何检测和修复资源泄漏问题。

# 审计资源未关闭示例
java -jar autojav-cli-1.0.0.jar audit examples/resource-leak/FileProcessor.java

# AI 深度分析并修复
java -jar autojav-cli-1.0.0.jar audit examples/resource-leak/FileProcessor.java -ai -f

问题类型:资源泄漏

影响:可能导致性能问题和系统资源耗尽

提示:更多示例和详细说明请查看 examples/README.md

5 代码修复(团队版+)

修复命令

# 预览修复(不实际修改文件)
java -jar autojav-cli-1.0.0.jar audit UserService.java -f -p

# 执行修复(自动备份原文件)
java -jar autojav-cli-1.0.0.jar audit UserService.java -f

# 修复整个目录(逐个确认)
java -jar autojav-cli-1.0.0.jar audit src/ -r -f

# AI 深度分析并自动修复
java -jar autojav-cli-1.0.0.jar audit UserService.java -ai -f

注意:修复前会自动创建 .backup.时间戳.java 备份文件。修复后请仔细审查变更,必要时可手动恢复。

6 接口文档生成

自动解析 Spring Boot 项目的 Controller 接口,生成标准化文档。

生成命令

# 生成 Markdown 格式文档
java -jar autojav-cli-1.0.0.jar doc src/ -f markdown -o api.md

# 生成 OpenAPI (Swagger) JSON 格式
java -jar autojav-cli-1.0.0.jar doc src/ -f openapi -o api.json

# 递归扫描所有子目录
java -jar autojav-cli-1.0.0.jar doc src/ -r -f markdown -o api.md

支持的注解

@RestController @GetMapping @PostMapping @PutMapping @DeleteMapping @RequestMapping @RequestParam @RequestBody

7 许可证管理

免费试用

新用户自动获得 7 天团队版试用,或使用命令手动开启:

# 开启免费试用
java -jar autojav-cli-1.0.0.jar license trial

激活正式版

# 激活许可证
java -jar autojav-cli-1.0.0.jar license activate YOUR-LICENSE-KEY

# 查看许可证信息
java -jar autojav-cli-1.0.0.jar license info

免费版:永久可用,包含基础代码审计和文档生成功能。升级到团队版解锁 AI 深度审计和代码修复。

8 CI/CD 集成

在持续集成流程中自动执行代码审计:

GitHub Actions

name: Code Audit

on: [push, pull_request]

jobs:
  audit:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - name: Set up JDK 17
        uses: actions/setup-java@v3
        with:
          java-version: '17'
          distribution: 'temurin'
      - name: Download AutoJava
        run: wget https://autojav.vercel.app/autojav-cli-1.0.0.jar
      - name: Run Code Audit
        run: |
          java -jar autojav-cli-1.0.0.jar audit src/ -r -o audit-report.txt
          cat audit-report.txt

GitLab CI

code_audit:
  image: eclipse-temurin:17-jdk
  script:
    - wget https://autojav.vercel.app/autojav-cli-1.0.0.jar
    - java -jar autojav-cli-1.0.0.jar audit src/ -r -o audit-report.txt
  artifacts:
    paths:
      - audit-report.txt
    expire_in: 1 week

9 常见问题

代码会被上传到云端吗?

不会。AutoJava 完全在本地运行,代码不会离开你的机器。AI 审计功能仅将代码片段发送给你配置的 AI 服务商(如 Kimi、通义千问等),不会经过我们的服务器。

免费版有什么限制?

免费版可以使用基础的代码审计和文档生成功能,但不包含 AI 深度审计和自动修复功能。这些高级功能需要升级到团队版或更高版本。

支持哪些 AI 服务商?

目前支持通义千问(阿里云)、文心一言(百度)、讯飞星火(科大讯飞)、Kimi(月之暗面)等国内主流大模型。后续会根据需求增加更多服务商。

如何获取技术支持?

免费版用户可以通过 GitHub Issues 获取社区支持。付费版用户享有优先技术支持,企业版和买断版用户还可获得 1 对 1 专属支持。

修复代码会覆盖原文件吗?

修复前会自动创建备份文件(.backup.时间戳.java),原文件会被修改。建议修复后仔细审查变更,如有问题可从备份文件恢复。