wangmingwei cae1a85ba9 初始代码
2026-04-21 17:17:01 +08:00
2026-04-21 17:17:01 +08:00
2026-04-21 17:17:01 +08:00
2026-04-21 17:17:01 +08:00
2026-04-21 17:17:01 +08:00
2026-04-21 17:17:01 +08:00
2026-04-21 17:17:01 +08:00

特别说明源码、JDK、数据库、Redis等安装或存放路径禁止包含中文、空格、特殊字符等

一 环境要求

1.1 开发环境

类目 版本说明或建议
硬件 开发电脑建议使用I3及以上CPU16G及以上内存
操作系统 Windows 10/11MacOS
JDK 默认使用JDK 21如需要切换JDK 8/11/17版本请参考文档调整代码推荐使用 OpenJDK,如 Liberica JDKEclipse TemurinAlibaba DragonwellBiSheng等发行版;
Maven 依赖管理工具,推荐使用 3.6.3 及以上版本
数据库 兼容 MySQL 5.7.x/8.xSQLServer 2012+Oracle 11gPostgreSQL 12+达梦数据库(DM8)人大金仓数据库(KingbaseES_V8R6)
IDE 代码集成开发环境,推荐使用 IDEA2024 及以上版本,兼容 EclipseSpring Tool Suite 等IDE工具

1.2 运行环境

适用于测试或生产环境

类目 版本说明或建议
服务器配置 建议至少在 4C/16G/50G的机器配置下运行
操作系统 建议使用 Windows Server 2019 及以上版本或主流 Linux 发行版本,推荐使用 Linux 环境;兼容 统信UOSOpenEuler麒麟服务器版 等信创环境;
JRE 默认使用JRE 21如需要切换JRE 8、11、17版本请参考文档调整代码推荐使用 OpenJDK,如 Liberica JDKEclipse TemurinAlibaba DragonwellBiSheng等发行版;
数据库 兼容 MySQL 5.7.x/8.xSQLServer 2012+Oracle 11gPostgreSQL 12+达梦数据库(DM8)人大金仓数据库(KingbaseES_V8R6)

二 关联项目

项目 分支 说明
yunzhupaas-workflow-core v1.0.0-stable 流程引擎基础依赖

三 Maven私服配置

Apache Maven 依赖管理工具,推荐使用 3.6.3 及以上版本
解决以下依赖无法从公共Maven仓库下载的问题

打开Maven安装目录中的 conf/settings.xml 文件,
<servers></servers> 中添加如下内容

<server>
  <id>maven-releases</id>
  <username>admin</username>
  <password>admin123</password>
</server>

<mirrors></mirrors> 中添加

<mirror>
  <id>maven-releases</id>
  <mirrorOf>*</mirrorOf>
  <name>maven-releases</name>
  <url>https://repository.yunzhupaas.com/repository/maven-public/</url>
</mirror>

四 开发环境

4.1 导入数据库脚本

以 MySQL数据库 为例
字符集utf8mb4
排序规则utf8mb4_general_ci

在MySQL创建 yunzhupaas_flow 数据库,并将 yunzhupaas-database/MySQL/yunzhupaas_flow_init.sql 导入;

4.2 导入依赖

详见 yunzhupaas-workflow-core 项目中的 README.md 文档说明

4.3 项目配置

打开编辑 yunzhupaas-workflow-admin/src/main/resources/application.yml

4.3.1 指定环境配置

环境说明:

  • application-dev.yml 开发环境(默认)
  • application-test.yml 测试环境
  • application-preview.yml 预发布环境
  • application-prod.yml 生产环境

以开发环境为例,根据实际需求修改

# application.yml第 6 行,可选值dev(开发环境-默认)、test(测试环境)、preview(预生产)、prod(生产环境)
active: dev

4.3.2 调整运行端口

根据实际需求调整

打开编辑 yunzhupaas-workflow-admin/src/main/resources/application-dev.yml(第 2 行)

port: 31000 # 默认运行端口

4.3.3 数据库配置示例

打开编辑 yunzhupaas-workflow-admin/src/main/resources/application-dev.yml,修改以下配置

注意:

  • 若使用 Oracle达梦 数据库必需配置模式名称
  • 若使用 PostgreSQL人大金仓KingbaseES 数据库, 默认public模式无需配置模式名称, 若指定模式需要配置模式名称
  • 若使用 MySQLSQLServer 无需配置模式名称
4.3.3.1 MySQL数据库
spring:
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    type: com.mysql.cj.jdbc.MysqlDataSource
    url: jdbc:mysql://127.0.0.1:3306/yunzhupaas_flow?yunzhupaasDateTimeBehavior=convertToNull&useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&autoReconnect=true&nullCatalogMeansCurrent=true
    username: dbuser
    password: dbpasswd
4.3.3.2 SQLServer数据库
spring:
  datasource:
    driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
    type: com.microsoft.sqlserver.jdbc.SQLServerDataSource
    url: jdbc:sqlserver://127.0.0.1:1433;databaseName=yunzhupaas_flow;trustServerCertificate=true
    username: dbuser
    password: dbpasswd
4.3.3.3 Oracle数据库

必需配置模式名称

flowable:
  database-schema: YUNZHUPAAS_FLOW
spring:
  datasource:
    driver-class-name: oracle.jdbc.OracleDriver
    type: oracle.jdbc.datasource.impl.OracleDataSource
    url: jdbc:oracle:thin:@127.0.0.1:1521:ORCL
    username: YUNZHUPAAS_FLOW
    password: dbpasswd
4.3.3.4 PostgreSQL数据库

若使用默认 public 模式

spring:
  datasource:
    driver-class-name: org.postgresql.Driver
    type: org.postgresql.ds.PGSimpleDataSource
    url: jdbc:postgresql://127.0.0.1:5432/yunzhupaas_flow
    username: dbuser
    password: dbpasswd

若使用其他模式

flowable:
  database-schema: yunzhupaas_flow
spring:
  datasource:
    driver-class-name: org.postgresql.Driver
    type: org.postgresql.ds.PGSimpleDataSource
    url: jdbc:postgresql://127.0.0.1:5432/yunzhupaas_flow
    username: dbuser
    password: dbpasswd
4.3.3.5 达梦dm8数据库

必需配置模式名称,连接后面需要添加参数 ?compatibleMode=oracle

flowable:
  database-schema: YUNZHUPAAS_FLOW
spring:
  datasource:
    driver-class-name: dm.jdbc.driver.DmDriver
    type: dm.jdbc.driver.DmdbDataSource
    url: jdbc:dm://127.0.0.1:5236/YUNZHUPAAS_FLOW?compatibleMode=oracle
    username: dbuser
    password: dbpasswd
4.3.3.6 人大金仓KingbaseES数据库

若使用默认 public 模式

spring:
  datasource:
    driver-class-name: org.postgresql.Driver
    type: org.postgresql.ds.PGSimpleDataSource
    url: jdbc:postgresql://127.0.0.1:5432/yunzhupaas_flow
    username: dbuser
    password: dbpasswd

若使用其他模式

flowable:
  database-schema: yunzhupaas_flow
spring:
  datasource:
    driver-class-name: org.postgresql.Driver
    type: org.postgresql.ds.PGSimpleDataSource
    url: jdbc:postgresql://127.0.0.1:5432/yunzhupaas_flow
    username: dbuser
    password: dbpasswd

4.4 执行调试或运行

4.4.1 yunzhupaas-workflow-core 项目未使用加密

  • 在IDEA中, 展开右侧 MavenProfiles 去除勾选 encrypted 选项, 再点击 Maven 刷新 图标刷新Maven
  • 找到 yunzhupaas-workflow-admin/src/main/java/yunzhupaas/YunzhupaasFlowableApplication.java,右击运行即可。

若使用JDK9及以上版本在IDEA中打开 Edit Configurations VM启动参数添加如下参数

--add-opens java.base/java.lang=ALL-UNNAMED

4.4.2 yunzhupaas-workflow-core 项目使用加密

  • 在IDEA中展开右侧 MavenProfiles 勾选 encrypted 选项, 再点击Maven 刷新 图标刷新Maven
  • 在IDEA中双击右侧 Mavenyunzhupaas-workflow > clean 将会自动安装加密打包插件, 并创建创建yunzhupaas-workflow-admin/target/copylib 复制依赖包用于下一步运行

参数说明

# 打开项目中`yunzhupaas-workflow-admin/target/copylib` 目录, 复制Jar包 `yunzhupaas-workflow-common-版本号.jar` 的文件名
-javaagent:项目存放路径/yunzhupaas-workflow-admin/target/copylib/yunzhupaas-workflow-common-当前版本号.jar(上面复制的文件名)="decryptProjectPathPrefix=yunzhupaas-workflow-common___yunzhupaas-workflow-flowable"
  • 在IDEA中打开 Edit Configurations VM启动参数添加如下参数

若使用 JDK8 运行需要替换下方命令示例中的Jar包路径

-XX:+DisableAttachMechanism
-javaagent:D:/Projects/IdeaProjects/yunzhupaas-workflow-boot/yunzhupaas-workflow-admin/target/copylib/yunzhupaas-workflow-common-1.0.0-RELEASE.jar="decryptProjectPathPrefix=yunzhupaas-workflow-common___yunzhupaas-workflow-flowable"

若使用JDK 9及以上版本需要替换下方命令示例中的Jar包路径

--add-opens java.base/java.lang=ALL-UNNAMED
-XX:+DisableAttachMechanism
-javaagent:D:/Projects/IdeaProjects/yunzhupaas-workflow-boot/yunzhupaas-workflow-admin/target/copylib/yunzhupaas-workflow-common-1.0.0-RELEASE.jar="decryptProjectPathPrefix=yunzhupaas-workflow-common___yunzhupaas-workflow-flowable"

4.5 专业版用户

专业版用户无 yunzhupaas-workflow-core 项目

若使用 JDK 8/11 开发

  • 首先全局搜索 jakarta. 批量替换为 javax.,
  • 在本项目根目录打开 pom.xml 文件,注释第 92 行,解除注释第 94 行;

五 项目发布

5.1 yunzhupaas-workflow-core 项目未使用加密

  • 在IDEA中, 展开右侧 MavenProfiles 去除勾选 encrypted 选项, 再点击Maven 刷新 图标刷新Maven
  • 在IDEA中双击右侧Maven中 yunzhupaas-workflow > Lifecycle > clean 清理项目
  • 在IDEA中双击右侧Maven中 yunzhupaas-workflow > Lifecycle > package 打包项目
  • 打开 yunzhupaas-workflow/yunzhupaas-workflow-admin/target,将 yunzhupaas-workflow-admin-1.0.0-RELEASE.jar 上传至服务器

5.2 yunzhupaas-workflow-core 项目使用加密

  • 在IDEA中, 展开右侧 MavenProfiles 勾选 encrypted 选项, 再点击Maven 刷新 图标刷新Maven
  • 在IDEA中双击右侧 Maven > yunzhupaas-workflow > clean 将会自动安装加密打包插件
  • 在IDEA中双击右侧 Maven > yunzhupaas-workflow > Lifecycle > package 打包项目
  • 打开 yunzhupaas-workflow/yunzhupaas-workflow-admin/target,将 yunzhupaas-workflow-admin-1.0.0-RELEASE.jar 上传至服务器
  • 启动命令

若使用 JDK/JRE 8 运行

java -javaagent:./yunzhupaas-workflow-admin-1.0.0-RELEASE.jar -XX:+DisableAttachMechanism -jar yunzhupaas-workflow-admin-1.0.0-RELEASE.jar

若使用 JDK/JRE 9及以上版本运行

java -javaagent:./yunzhupaas-workflow-admin-1.0.0-RELEASE.jar --add-opens java.base/java.lang=ALL-UNNAMED -XX:+DisableAttachMechanism -jar yunzhupaas-workflow-admin-1.0.0-RELEASE.jar
Description
No description provided
Readme 44 KiB
Languages
Java 96.1%
Dockerfile 3.9%