# JavaEditor **Repository Path**: yanxxcloud/JavaEditor ## Basic Information - **Project Name**: JavaEditor - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-07-10 - **Last Updated**: 2025-07-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Java Web 代码编辑器 一个功能完整的Web版Java代码编辑器,支持代码编辑、语法高亮、编译运行和调试功能。 ## 功能特性 ### 🎯 核心功能 - **代码编辑**: 基于CodeMirror的专业代码编辑器 - **语法高亮**: 完整的Java语法高亮支持 - **代码编译**: 实时Java代码编译和错误提示 - **程序运行**: 支持Java程序的执行和输出显示 - **调试功能**: 完整的调试支持,包括断点、单步执行、变量查看 ### 🎨 界面特性 - **现代化UI**: 深色主题,专业IDE外观 - **多主题支持**: Monokai、Material、Dracula等多种主题 - **响应式设计**: 支持不同屏幕尺寸 - **分屏布局**: 代码编辑区、输出区、调试区分离显示 ### 🔧 编辑器功能 - **智能缩进**: 自动代码缩进和格式化 - **括号匹配**: 自动括号匹配和高亮 - **行号显示**: 代码行号和当前行高亮 - **快捷键支持**: 常用编程快捷键 - **自动保存**: 防止代码丢失的自动保存功能 ### 🐛 调试功能 - **断点设置**: 点击行号设置/取消断点 - **单步执行**: 逐行执行代码 - **变量监视**: 实时查看变量值和类型 - **调用栈**: 程序执行流程跟踪 - **继续执行**: 运行到下一个断点 ## 快速开始 ### 环境要求 - Node.js 14.0+ - Java JDK 8+ - 现代浏览器(Chrome、Firefox、Safari、Edge) ### 安装步骤 1. **克隆项目** ```bash git clone cd JavaEditor ``` 2. **安装依赖** ```bash npm install ``` 3. **启动服务器** ```bash npm start ``` 4. **访问编辑器** 打开浏览器访问: `http://localhost:3000` ### 开发模式 ```bash npm run dev ``` 使用nodemon自动重启服务器,适合开发调试。 ## 使用指南 ### 基本操作 1. **编写代码**: 在左侧编辑器中输入Java代码 2. **运行程序**: 点击"运行"按钮编译并执行代码 3. **查看输出**: 在右侧输出面板查看程序运行结果 4. **保存代码**: 点击"保存"按钮下载代码文件 5. **加载代码**: 点击"加载"按钮上传Java文件 ### 调试操作 1. **设置断点**: 点击代码行号设置断点(红色圆点) 2. **开始调试**: 点击"调试"按钮启动调试模式 3. **单步执行**: 点击"单步执行"逐行运行代码 4. **查看变量**: 在调试面板查看当前变量值 5. **继续执行**: 点击"继续"运行到下一个断点 6. **停止调试**: 点击"停止调试"结束调试会话 ### 快捷键 - `Ctrl/Cmd + S`: 保存代码 - `Ctrl/Cmd + R`: 运行代码 - `Ctrl/Cmd + D`: 开始调试 - `F5`: 运行代码 - `F9`: 设置/取消断点 - `Space`: 暂停/继续(调试模式) ## 项目结构 ``` JavaEditor/ ├── index.html # 主页面 ├── style.css # 样式文件 ├── script.js # 前端JavaScript ├── server.js # 后端服务器 ├── package.json # 项目配置 ├── README.md # 项目说明 └── temp/ # 临时文件目录 ``` ## API接口 ### 编译运行 ```http POST /api/compile-run Content-Type: application/json { "code": "Java源代码", "className": "Main" } ``` ### 调试相关 ```http # 启动调试 POST /api/debug/start # 设置断点 POST /api/debug/breakpoint # 单步执行 POST /api/debug/step # 继续执行 POST /api/debug/continue # 停止调试 POST /api/debug/stop ``` ## 技术栈 ### 前端 - **HTML5**: 页面结构 - **CSS3**: 样式和布局 - **JavaScript ES6+**: 交互逻辑 - **CodeMirror**: 代码编辑器核心 - **WebSocket**: 实时通信 ### 后端 - **Node.js**: 服务器运行时 - **Express**: Web框架 - **WebSocket**: 实时调试通信 - **Child Process**: Java程序执行 ## 浏览器支持 - ✅ Chrome 60+ - ✅ Firefox 55+ - ✅ Safari 12+ - ✅ Edge 79+ ## 常见问题 ### Q: 编译失败怎么办? A: 请确保: 1. Java JDK已正确安装 2. 代码语法正确 3. 类名与文件名匹配 ### Q: 调试器不工作? A: 请检查: 1. 代码已成功编译 2. 断点设置在可执行代码行 3. 浏览器支持WebSocket ### Q: 如何更改主题? A: 在工具栏的主题选择器中选择喜欢的主题。 ## 贡献指南 欢迎提交Issue和Pull Request来改进这个项目! 1. Fork 项目 2. 创建功能分支 (`git checkout -b feature/AmazingFeature`) 3. 提交更改 (`git commit -m 'Add some AmazingFeature'`) 4. 推送到分支 (`git push origin feature/AmazingFeature`) 5. 打开 Pull Request ## 许可证 本项目采用 MIT 许可证 - 查看 [LICENSE](LICENSE) 文件了解详情。 ## 更新日志 ### v1.0.0 - ✨ 初始版本发布 - ✨ 基础代码编辑功能 - ✨ Java编译和运行 - ✨ 调试功能支持 - ✨ 多主题支持 - ✨ 响应式设计 ## 联系方式 如有问题或建议,请通过以下方式联系: - 📧 Email: your-email@example.com - 🐛 Issues: [GitHub Issues](https://github.com/your-username/java-web-editor/issues) - 💬 Discussions: [GitHub Discussions](https://github.com/your-username/java-web-editor/discussions) --- ⭐ 如果这个项目对你有帮助,请给它一个星标!