项目简介
本项目是一个基于C++和Vue.js构建的在线评测系统(OJ系统),为用户提供多语言支持的编程练习与评测平台。该系统支持C、C++、Java、Python、Go、JavaScript等多种编程语言,还具备公告、题解、讨论等实用功能。
项目的主要特性和功能
- 多语言评测:可对C、C++、Java、Python、Go、JavaScript等多种编程语言代码进行评测。
- 公告、题解、讨论:用户能发布与查看公告、题解和讨论,且支持父子评论功能。
- 用户管理:涵盖用户注册、登录、信息更新以及权限管理等功能。
- 题目管理:支持对题目进行增删改查操作,包含题目信息编辑和测试数据处理。
- 评测系统:可对代码进行编译、运行和结果评估,支持特殊评测程序(SPJ)。
- 缓存管理:借助Redis进行缓存管理,提升系统性能。
- 日志记录:支持日志记录和异步写入,方便系统维护与调试。
安装使用步骤
1. 环境准备
- 操作系统:Ubuntu 18.04
- 数据库:MongoDB 4.2.24,Redis 6.0.9
- 依赖库:jsoncpp,cpp-httplib,mongocxx,redis-plus-plus
2. 安装依赖
bash
sudo apt-get update
sudo apt-get install -y build-essential libboost-all-dev libmongoc-dev libbson-dev libhiredis-dev
3. 编译项目
bash
mkdir build
cd build
cmake ..
make
4. 配置数据库
- 启动MongoDB和Redis服务。
- 配置MongoDB和Redis的连接信息,保证项目能正确连接数据库。
5. 运行项目
bash
./XDOJ
6. 访问系统
打开浏览器,访问http://localhost:8080
(假设服务器运行在本地,端口为8080)。
7. 使用系统
- 注册并登录系统。
- 浏览题目、提交代码、查看评测结果。
- 参与讨论、查看题解和公告。
通过上述步骤,即可成功安装并使用本在线评测系统。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】