常见问题
安装相关
如何安装程序?
参考安装&升级
一键安装版启动失败
情况一:数据库启动失败,安装日志提示:Install/Remove of the Service Denied!。
windows家庭版操作系统默认没有执行权限,请右键以管理员身份运行
情况二:数据库启动失败,安装日志提示:数据库服务已启动
V6.2.0版本已修复此问题。V6.2.0版本以下执行卸载命令:
cd mysql8/bin
mysqld -remove MYSQL_EXAM情况三:数据库启动失败,安装日志提示:其他提示
一般是缺vc运行库,尝试安装mysql8/vcredist_x64.exe。
情况四:点击小猫考试.exe,闪一下没了
一般是本地又自行安装了java程序,请卸载
后端程序启动失败
检查java版本
执行命令:java -version
java -version
java version "21.0.6" 2025-01-21 LTS
Java(TM) SE Runtime Environment (build 21.0.6+8-LTS-188)
Java HotSpot(TM) 64-Bit Server VM (build 21.0.6+8-LTS-188, mixed mode, sharing)V6.x.x版本:如果java不是21.x.x版本,请切换
V5.x.x版本:如果java不是1.8.x_xxx版本,请切换
检查mysql版本
执行命令:mysql -V
mysql -V
mysql Ver 14.14 Distrib 5.7.30, for Win64 (x86_64)如果mysql不是5.7.x或8.x.x版本,请切换
账号密码是多少
admin/111111
nginx配置
为简化部署难度,后端集成了自动路由模块,基于User-Agent请求头实现设备类型识别(PC/移动端),动态返回适配的静态资源。配置如下:
[程序根目录]
├── xmky-exam-*.jar # java -jar xmky-exam-*.jar 启动后端程序,*表示版本号。
├── config/
├── application.yml # 后端配置文件,修改服务器端口、数据库连接等信息
├── h5/ # PC端打包后重命名为h5,放到jar包同级目录
├── config.js # pc端配置文件,修改ip为服务器ip,端口为服务器端口
├── index.html # pc端首页
└── m/ # 移动端打包后重命名为m,放到jar包同级目录
├── index.html # 移动端首页
└── static/
└── config.js # 移动端配置文件,修改ip为服务器ip,端口为服务器端口当默认路由功能不满足需求时,可使用Nginx反向代理实现更灵活的设备路由方案。配置如下:
# 局域网配置示例:
server {
listen 80; # 监听80端口
server_name localhost; # 服务器ip为192.168.0.86
set $root_dir "d:/server/h5"; # 默认请求根目录为PC端目录。h5/config.js配置:http://192.168.0.86/api/
if ($http_user_agent ~* "(Android|iPhone|iPad|iPod|Mobile)") { # 如果是移动端访问
set $root_dir "d:/server/m"; # 更改根目录为移动端目录。m/static/config.js配置:http://192.168.0.86/api/
}
client_max_body_size 10m; # 默认1M,上传视频最大需要10M
location / { # 如果以/开头的请求
root $root_dir; # 转发到$root_dir目录下
try_files $uri $uri/ /index.html; # 尝试匹配文件,找不到则返回index.html,由前端框架处理路由。
location /api/ { # 如果以/api/开头的请求(前端请求后端的接口)
proxy_pass http://localhost:8000/api/; # 转发到后端程序,默认端口为8000
}
}
}
# 二级域名配置示例:
server {
listen 80;
server_name api.yousite.com; # 注册域名,添加解析记录(记录类型:A;主机名:api;记录值:服务器公网IP;)
client_max_body_size 10m; # 默认1M,上传视频最大需要10M
location / {
proxy_pass http://localhost:8000/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
server {
listen 80;
server_name h5.yousite.com; # 注册域名,添加解析记录(记录类型:A;主机名:h5;记录值:服务器公网IP;)
root d:/server/h5; # h5/config.js配置:http://api.yousite.com/api/
location / {
try_files $uri $uri/ /index.html;
}
}
server {
listen 80;
server_name m.yousite.com; # 注册域名,添加解析记录(记录类型:A;主机名:m;记录值:服务器公网IP;)
root d:/server/m; # m/static/config.js配置:http://api.yousite.com/api/
location / {
try_files $uri $uri/ /index.html;
}
}提示信息
使用Ctrl+F5强制刷新浏览器,防止页面缓存不生效
报错相关
后台日志在哪
win/linux手动安装
程序日志:{xmky-exam-x.x.x.jar包目录}/log/xmky-exam.log
win一键安装版
安装日志:{win一键安装包根目录}/log/xmky-install.log
程序日志:{win一键安装包根目录}/xmky-exam/log/xmky-exam.log 
docker版
{docker安装包根目录}/log/xmky-exam.log 
宝塔版
{登录宝塔面板/文件/程序根目录}/log/xmky-exam.log 
连接服务器失败
在本机使用正常,其他电脑的浏览器打开登录页,输入账号密码,点击登录,提示“连接服务器失败”。
- 修改PC端:
config.js中的url的ip为当前浏览器地址的ip - 修改移动端:
static/config.js中的BASE_URL的ip为当前浏览器地址的ip
处理后,在浏览器中按下Ctrl+F5强制刷新再试。
导出PDF失败
浏览器页面提示:请联系管理员安装wkhtmltopdf
执行如下命令
wkhtmltopdf -V
wkhtmltopdf 0.12.6 (with patched qt)如果没有显示第二行,请安装wkhtmltopdf,参考wkhtmltopdf安装
安装完成需要重启java程序(需要重新加载系统环境变量),或重启电脑。
上传大于1M的图片视频失败
浏览器控制台报错:Failed to load resource: net::ERR_CONNECTION_RESET
nginx需要配置client_max_body_size 10m; 参考nginx配置。
需求相关
哪里可以提bug和需求?
技术支持
提供5*8小时的qq在线技术支持
提bug和需求可以实现吗?
软件bug
按严重程度决定修复时间,之后发布修复版本
通用需求
你也可以影响版本走向,加入需求池后,会在未来的某个版本实现
定制需求
收费服务,商业合作qq(3532748782)
程序是开源免费的吗?
开源免费版(全功能)
涵盖题库、练习、课程、考试、权限管理等核心功能,无人数限制,支持内网私有部署,开放源码,无隐藏付费功能。
商业增值版(高级扩展)
提供单点登录、可视化大屏、AI智能助手、专属定制开发等增值服务,详见产品版本说明。
如何保证质量和持续更新能力?
开源向善,商业致远
开源免费版将持续免费维护并不断完善;同时,我们通过提供商业增值服务获得合理收入,以保障开源项目的持续投入和质量提升。
二次开发相关
可以二次开发吗?
接口定义明确,流程图清晰,代码质量过关,核心功能注释清晰,鼓励二次开发。
二次开发后可以商用吗?
遵循 GPL2 协议,允许二次开发后商用。如果对外分发,须无偿发布修改后的完整源代码。
其他
是否支持微信小程序
使用uniapp开发,做过兼容性测试,按需部署即可。





1、浏览器打开 https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html
2、选择 稳定版 Windows 64 下载
3、安装,启动,登录
4、使用拥有小程序开发者权限的微信扫码登录
5、uniapp选中m根目录,点击菜单“发行”->“小程序-微信(仅适用于uni-app)(W)”->弹出框第二行输入小程序appid->“发行(P)”
6、等待uniapp调用微信开发者工具,自动打开小程序模拟器
7、调试程序没有问题,点击“上传”,完成部署