尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

RuoYi-flowable 高频问题速查:流程部署失败、中文乱码、字体不显示等10个坑一次解决

RuoYi-flowable 高频问题速查:流程部署失败、中文乱码、字体不显示等10个坑一次解决 RuoYi-flowable 高频问题速查流程部署失败、中文乱码、字体不显示等10个坑一次解决【免费下载链接】RuoYi-flowable基RuoYi-vue flowable 6.7.2 的工作流管理 右上角点个 star 持续关注更新哟项目地址: https://gitcode.com/gh_mirrors/ru/RuoYi-flowable本文面向刚接触RuoYi-flowable的新手开发者。RuoYi-flowable 是一款基于 RuoYi-vue Flowable 6.x 的工作流管理平台内置在线流程设计器、表单设计器、会签任务与任务监听器等常用功能。下面按“环境启动 → 流程部署 → 运行展示 → 配置调优”的顺序把社区最高频的 10 个坑整理成速查清单帮你快速定位问题、一次解决。一、启动与数据库先排除这两类拦路虎坑1启动报表不存在Flowable 表没生成最常见的启动失败原因。项目要求按顺序执行三个脚本缺一不可顺序见 sql/README.mdry_20240629.sqlRuoYi 基础表用户、角色、菜单quartz.sql定时任务表tony-flowable.sql流程引擎业务扩展表另外可在 application.yml 中确认flowable.database-schema-update: true该配置会让 Flowable 自动建表/更新表建议开发阶段保持开启。 建库时请指定utf8mb4字符集这是后面中文乱码问题的第一道防线。坑28080 端口被占用 / Redis 连不上后端默认端口为 8080Redis 地址配置在 application.yml 的spring.redis节点。生产环境启动可参考项目根目录的启动脚本 ry.shLinux与 ry.batWindows注意脚本中已固定-Duser.timezoneAsia/Shanghai避免时区导致的任务调度偏差。二、流程部署失败与乱码的高发区坑3BPMN 文件部署失败、流程名中文乱码三类原因按概率排序编码问题手工编写的 .bpmn 文件必须保存为 UTF-8建议直接用项目自带的在线设计器ruoyi-ui/src/views/flowable/definition/生成避免编码歧义JDBC 连接串缺失参数数据源 URL 必须带useUnicodetruecharacterEncodingutf8参考 application-druid.yml 中 master 库配置Tomcat 编码application.yml 已设置tomcat.uri-encoding: UTF-8自行修改配置时不要删掉。坑4流程图画图正常但节点中文名显示方框/字体不显示这是 Flowable 项目的经典坑——服务器上没有中文字体。项目在 FlowableConfig.java 中统一设置了活动、标签、注释三种字体为宋体Windows 开发机一般自带宋体无感知Linux 服务器默认无中文字体需安装如fonts-wqy-zenhei或把含宋体的fontconfig字体包放入 JVM 字体目录后重启若需要自定义高亮线颜色、节点边框等可参考被注释保留的 MyDefaultProcessDiagramCanvas.java取消注释按需改造即可。⚠️ 改完字体配置后必须重启后端画布类在首次生成图片时才加载字体。三、运行展示流程图与前端页面坑5待办详情里流程图没有高亮/打不开高亮逻辑由自定义生成器完成核心文件CustomProcessDiagramGenerator.java负责计算当前节点/流转线CustomProcessDiagramCanvas.java负责文字换行、标签绘制高亮节点来源在 FlowTaskServiceImpl.java 中通过历史活动表查询。排查顺序先看该接口是否 500常因坑4字体缺失导致渲染异常再核对流程是否处于运行态。坑6前端页面白屏或请求 404本地启动前端时接口代理由 vue.config.js 的devServer.proxy控制若后端端口改过需同步修改生产部署需让 Nginx 将/prod-api或你自定义前缀反向代理到 8080路径映射错一个字符就是 404若登录页能开但菜单为空白多为 Token 过期时间过短token.expireTime默认 30 分钟属正常现象。四、任务与表单权限、监听器和上传坑7发起流程后审批人待办里看不到任务优先检查三处配置节点是否配置了任务候选人/候选角色在线设计器任务面板候选用户是否在系统管理→用户管理中且状态正常是否误用了手工任务Manual Task项目自带 lint 规则禁止见 no-manual-task.js。坑8任务监听器/执行监听器不生效监听器类必须放在可被 Spring 扫描的包内参考 FlowTaskListener.java 与 FlowExecutionListener.java且实现DelegateTaskListener/DelegateExecutionListener接口。常见错误是 BPMN 里填了简单类名而非 Spring Bean 名称或全限定类名。表达式与监听器的维护页面分别在ruoyi-ui/src/views/flowable/expression/和ruoyi-ui/src/views/flowable/listener/。坑9表单/图片上传失败提示文件过大上传大小限制在 application.yml单文件 10MB、请求总量 20MB。富文本表单图片多时容易超限按需调大spring.servlet.multipart两个参数即可。表单设计器组件位于 VFormDesigner.umd.min.js设计器页面在 flowForm/index.vue。坑10异步执行器抢资源 / 定时任务行为异常项目在 application.yml 中显式关闭了异步执行器async-executor-activate: false单实例部署请保持该配置否则异步任务可能重复消费。若启用了 quartz 模块注意表结构来自坑1 中的quartz.sql缺表时定时任务页面会直接报错。总结一张排查路线图现象定位关键文件启动报错、缺表数据库初始化sql/README.md端口/Redis 问题环境配置application.yml部署失败、乱码编码链路application-druid.yml字体方框服务器字体FlowableConfig.java图不高亮自定义画布flow/前端 404代理配置vue.config.js按“先数据库、再编码、后字体、最后前端代理”的顺序排查90% 的问题都能在两轮重启内解决。祝你部署顺利 【免费下载链接】RuoYi-flowable基RuoYi-vue flowable 6.7.2 的工作流管理 右上角点个 star 持续关注更新哟项目地址: https://gitcode.com/gh_mirrors/ru/RuoYi-flowable创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表