39c673eaa1b1ac11115dedbc16c7201a1945a5b9
Task 2.3 - C++ 解析器: - CppParser.cs: C++ 语法解析器 - 支持类和方法提取 - 支持 #include 和 namespace 提取 Task 2.6 - C# → C++ 转换器: - CSharpToCppConverter.cs: C# 到 C++ 转换 - 基础类型映射 - 类和方法转换 Task 2.7 - Java → C++ 转换器: - JavaToCppConverter.cs: Java 到 C++ 转换 - 类型映射和类转换 Task 3.3 - C++ 编译验证: - CppCompilerValidator.cs: C++ 语法验证 - 检查缺少分号等常见问题 Task 6.2 - 报告导出: - ReportExportService.cs: Markdown/HTML/PDF 导出 Task 10.1-10.3 - 文档和打包: - README.md: 项目主文档 - docs/USAGE.md, DEVELOPMENT.md, API.md - Dockerfile, docker-compose.yml - NuGet 打包配置 Task 9.1-9.3 - E2E 测试: - CodePlay.E2E: Playwright 测试项目 - converter.spec.ts, project.spec.ts, auth.spec.ts 测试:42 个 (41 通过,1 跳过) ✅ 新增文件: - CodePlay.Core/Parsers/CppParser.cs - CodePlay.Core/Converters/CSharpToCppConverter.cs - CodePlay.Core/Converters/JavaToCppConverter.cs - CodePlay.Core/Validators/CppCompilerValidator.cs - CodePlay.Core/Services/ReportExportService.cs - CodePlay.E2E/package.json, playwright.config.ts - CodePlay.E2E/tests/*.spec.ts - README.md, docs/*.md, Dockerfile, docker-compose.yml Co-authored-by: monkeycode-ai <monkeycode-ai@chaitin.com>
CodePlay 代码转换平台
CodePlay 是一个专业的代码转换平台,支持 C# 与 Java 之间的双向代码转换,具有智能验证、批量转换、Web 界面等强大功能。
✨ 特性
- 🔄 双向转换: C# ↔ Java 完整支持
- 📝 智能映射: 80+ 种类型自动映射(参考 Aspose)
- ✅ 编译验证: Roslyn + javac 实时验证
- 🔧 自动修复: 3 轮智能修复引擎
- 📊 批量转换: 支持整个项目目录转换
- 🌐 Web 界面: Vue3 + Monaco Editor
- 💾 数据持久化: SQLite 数据库
- 🚀 CLI 工具: 6 个实用命令
- 📋 报告导出: Markdown/HTML/PDF
🚀 快速开始
1. 克隆项目
git clone <repository-url>
cd CodePlay
2. 启动 Web 前端
cd CodePlay.Web
npm install
npm install monaco-editor
npm run dev
3. 启动 Web API
dotnet run --project CodePlay.WebAPI --urls "http://localhost:5000"
Swagger: http://localhost:5000/swagger
4. 使用 CLI
# 查看帮助
dotnet run --project CodePlay.CLI -- --help
# 单文件转换
dotnet run --project CodePlay.CLI -- convert -s CSharp -t Java -i input.cs -o output.java
# 批量转换
dotnet run --project CodePlay.CLI -- convert -s CSharp -t Java -i ./src -b
# 查看统计
dotnet run --project CodePlay.CLI -- stats
📖 文档
🛠️ 技术栈
后端
- .NET 8.0
- Entity Framework Core 8.0
- Roslyn (C# 解析)
- SQLite
前端
- Vue 3
- Element Plus
- Monaco Editor
工具
- xUnit (单元测试)
- Serilog (日志)
- Swagger (API 文档)
📊 项目统计
| 指标 | 数值 |
|---|---|
| 代码行数 | ~6,000 |
| 测试用例 | 42 |
| 测试通过率 | 97.6% |
| 支持语言 | C#, Java |
| 转换方向 | 双向 |
🤝 贡献
欢迎提交 Issue 和 Pull Request!
📄 许可证
MIT License
Description
Languages
C#
80.1%
Vue
11.8%
HTML
3.8%
TypeScript
2.3%
CSS
1.8%
Other
0.2%