[开源]在线评测系统,一个在线的判题系统,支持线上线下赛场景

开源系统流程管理
2026-06-28 04:18 1 次浏览 • 0 次下载 0KB
[开源]在线评测系统,一个在线的判题系统,支持线上线下赛场景

一、开源项目简介

Jiangnan Online Judge

江南在线评测系统(Jiangnan Online Judge),是一个在线的判题系统。用户可以在线提交程序多种程序(如C、C++、Java)源代码,系统对源代码进行编译和执行,并通过预先设计的测试数据来检验程序源代码的正确性。

二、开源协议

使用BSD开源协议

三、界面展示

新版采用 Golang、React 前后端分离开发,全新架构,用户在线运行测试,全新的用户体验、题目数据共享下载。

可参考文档切换至 v2 分支进行体验。

四、功能概述

功能特性

  • OI 模式 - 支持 OI 模式判题,子任务判题
  • 滚榜 - 在比赛结束后,提供滚动榜单的功能
  • VIP用户机制 - 可以将题目设为仅 VIP 用户可见
  • 小组功能 - 用户可以创建小组,并在小组内举办比赛
  • Testlib 特判 - 支持使用 testlib.h 来写特判程序
  • 线上线下赛场景 - 为线下举办的比赛增加限制:如限制参加比赛的账户,参加比赛的账户不能自己修改个人信息
  • 线下赛打印功能 - 为线下赛提供打印代码的功能
  • 题目打印功能 - 创建比赛后,可以将题目信息一键导出为 PDF,以供打印。
  • 下载比赛的提交 - 可用于查重
  • 公告弹窗提示 - 在比赛过程中,发布公告时可以给所有在线用户发布弹窗提示有新公告
  • 记录出错数据 - 可以查看提交方案的出错数据
  • 新闻门户首页 - 首页显示新闻,各种公告等
  • 支持多语言 - 现支持 C、C++、Java、Python3
  • 支持(Katex)数学公式
  • 题目描述多组样例 - 在一道题目的样例描述中,可以提供多组样例
  • 对比赛发布题解
  • 问题标签 - 给问题添加标签,方便查询
  • 基于 MVC 框架开发 - 开发便于上手
  • 多边形出题系统 - 一个功能完善的出题系统。出题目,生成数据,验题等。
  • Web 在线管理题目数据 - 在线对题目测试数据进行增删改查
  • 排行榜 - 对用户解题数量等进行排行
  • 积分榜 - 对参加比赛的用户进行积分结算,并进行排名

五、技术选型

环境需求

在 Linux 环境下安装。判题机是在 Linux 环境下写的,Windows 下无法运行判题机。

搭建 LNMP (或 LAMP) 环境:PHP 7.x、MySQL、Nginx / Apache2

本教程分为 一键安装脚本、手动安装过程。这两个过程选择其中一个即可。

测评机如需加入开机自动启动,请安装完后看 开机启动