littlebot
Published on 2025-04-08 / 1 Visits
0

【源码】基于Go语言的在线编程评判系统——“Stellar Judge”

项目简介

本项目是一个基于Go语言的在线编程评判系统,适用于在线编程竞赛、代码测试或自动评判场景。它支持C++、Java等多种编程语言,具备编译、运行测试用例、评判程序正确性等功能。系统核心逻辑用Go语言实现,借助Gin框架构建Web服务器,有完善的API路由和中间件支持。项目涵盖API路由定义、核心评判逻辑、资源管理和分配等关键部分,其中judge-core是核心组件,负责实际代码运行和结果收集。此外,还集成了cJSON库处理JSON数据的解析和生成。

项目的主要特性和功能

  1. 支持C++、Java等多种编程语言,满足不同评判需求。
  2. 可编译用户提交的代码片段,并在限制资源条件下运行测试用例。
  3. 能根据程序输出与预期结果比较,判断程序正确性。
  4. 有完善的API支持,通过API接口接收评判请求并返回结果,便于集成到在线编程平台或竞赛系统。
  5. 可监控程序运行时间、内存使用等资源消耗情况,保障公平性和安全性。
  6. 利用cJSON库高效解析和生成JSON数据,方便数据交换和格式化输出。

安装使用步骤

  1. 假设用户已下载本项目的源码文件。
  2. 安装依赖库:根据系统要求安装Gin框架和cJSON库。
  3. 配置系统参数:包括语言支持、资源限制等。
  4. 启动主程序:执行sh build.sh完成编译,然后执行judgement启动判题程序,监听指定的端口。
  5. 发送评判请求:通过API接口发送评判请求,如POST http://localhost:9090/api/judgement/judge,并接收返回结果。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】