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

【源码】基于C++和Vue.js的在线评测系统

项目简介

本项目是一个基于C++和Vue.js构建的在线评测系统(OJ系统),为用户提供多语言支持的编程练习与评测平台。该系统支持C、C++、Java、Python、Go、JavaScript等多种编程语言,还具备公告、题解、讨论等实用功能。

项目的主要特性和功能

  1. 多语言评测:可对C、C++、Java、Python、Go、JavaScript等多种编程语言代码进行评测。
  2. 公告、题解、讨论:用户能发布与查看公告、题解和讨论,且支持父子评论功能。
  3. 用户管理:涵盖用户注册、登录、信息更新以及权限管理等功能。
  4. 题目管理:支持对题目进行增删改查操作,包含题目信息编辑和测试数据处理。
  5. 评测系统:可对代码进行编译、运行和结果评估,支持特殊评测程序(SPJ)。
  6. 缓存管理:借助Redis进行缓存管理,提升系统性能。
  7. 日志记录:支持日志记录和异步写入,方便系统维护与调试。

安装使用步骤

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】