Skip to content
 
 

Repository files navigation

Java代码分析工具

一个专业的Java项目静态代码分析工具,能够深度解析Java项目,以方法为粒度构建代码调用关系图,并存储在图数据库中进行高效查询和可视化展示。

功能特性

  • 🔍 深度代码解析:支持Java项目的AST解析,提取类、方法、变量等代码元素
  • 📊 调用关系分析:构建方法级别的调用关系图,识别调用顺序和依赖关系
  • 🗄️ 图数据库存储:使用Neo4j存储代码结构图,支持复杂查询
  • 🎨 可视化展示:提供交互式的调用关系图可视化界面
  • 📈 分析报告:生成详细的代码质量和架构分析报告

技术架构

  • 后端:Python 3.13.9 + FastAPI + Neo4j
  • 前端:React 18 + TypeScript + D3.js + Ant Design
  • 数据库:Neo4j图数据库
  • 解析引擎:javalang + tree-sitter-java

快速开始

环境要求

  • Python 3.13.9+
  • Node.js 18+
  • Neo4j 5.0+

安装依赖

  1. 激活conda环境:
conda activate codeAnalysis
  1. 安装Python依赖:
pip install -r requirements.txt
  1. 安装前端依赖:
cd frontend
npm install

启动服务

  1. 启动Neo4j数据库
  2. 启动后端服务:
python -m backend.main
  1. 启动前端服务:
cd frontend
npm run dev

项目结构

codeAnalysis/
├── api/                    # API路由
├── config/                 # 配置文件
├── database/               # 数据库操作
├── models/                 # 数据模型
├── services/               # 业务服务
├── utils/                  # 工具函数
├── web/                    # 前端界面
├── docs/                   # 文档目录
│   ├── architecture/      # 架构文档
│   │   ├── deep_agent_architecture.md
│   │   └── agent_subagent_design.md
│   ├── api/               # API 文档
│   ├── guides/            # 使用指南
│   └── development/       # 开发文档
└── requirements.txt        # Python依赖

文档目录

项目文档已按类别组织在 docs/ 目录下:

使用说明

  1. 打开Web界面
  2. 选择要分析的Java项目目录
  3. 配置分析参数
  4. 执行代码解析
  5. 查看调用关系图和分析报告

贡献指南

欢迎提交Issue和Pull Request来改进这个项目。

许可证

MIT License

About

codeAnalysis

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages