本文为Camunda官网快速入门部分的中文版本
原文地址: https://docs.camunda.org/get-started/quick-start/
0.介绍
本教程将指导您使用Camunda BPM平台建模并实现您的第一个工作流程,其中将使用JAVA或NodeJS作为外部客户端,以及使用DMN分离流程与决策,让我们开始吧!
首先使用git克隆示例代码
git clone https://github.com/camunda/camunda-get-started-quickstart.git
# 如果github速度缓慢,也可以选择使用我的gitee镜像
git clone https://gitee.com/zoollcar/camunda-get-started-quickstart.git
在教程开始之前,首先将代码签出到Start标签
git checkout -f Start
在教程过程中可以随时通过Start标签恢复到初试状态,或使用Step-X(X表示步骤)标签,恢复到任意一步骤的状态
git checkout -f Step-X(将X替换为步骤数字1~6)
教程将分为六个步骤
- 下载和安装
在计算机上安装Camunda BPM平台和Camunda Modeler。
- 编辑流程
了解处理Camunda Modeler的基础知识,了解如何对完全可执行的流程进行建模和配置,以及如何集成自己的业务逻辑。
- 部署流程
将流程部署到Camunda并启动您的第一个流程实例。
- 人工任务
了解将人工任务集成到流程中的基础知识,以及如何使用Camunda构建表单。
- 动态性
了解如何通过向流程添加网关来使流程更具动态性。
- 决策自动化
了解如何在流程中集成DMN决策表。
1.下载和安装
首先,您需要安装 Camunda BPM平台和Camunda Modeler。
前期准备
确保你具有 JAVA1.8以上的JRE或JDK,并可以在命令行使用
在命令行中运行以下命令,检查你的java版本
java -version
可以在 Camunda’s support list 里找到Camunda支持的所有JAVA版本
Camunda Platform (Camunda BPM平台)
首先我们需要下载 Camunda Platform
打开下载地址 https://camunda.com/download/
下载ZIP压缩包,并解压到任意位置
windows运行start.bat
linux运行`start.sh,脚本会启动服务
在浏览器中打开 http://localhost:8080/ 就可以看到欢迎页面了
Camunda Modeler(用于编辑流程图及其他模型)
打开下载地址 https://camunda.com/download/modeler/
下载对应系统的版本,并解压到任意位置
执行 camunda-modeler.exe
(Windows), camunda-modeler.app
(Mac), or camunda-modeler.sh
(Linux),即可启动Camunda Modeler
2.编辑流程
本章中,我们将会使用Camunda Modeler创建第一个BPMN 2.0流程,并执行一些自动任务
首先,打开Camunda Modeler
新建BPMN流程
点击 File > New File > BPMN Diagram ,创建一个新的流程设计文件
编辑一个简单的流程
- 双击 开始 节点编辑标签,输入“付款请求”
标签可以换行,需要使用Shift +回车
- 点击右面显示的方框,添加一个新的活动
可以看到一个新的活动显示到画布上,双击将它命名为“刷卡付款”
- 点击取信用卡节点右面的扳手可以修改活动类型,这里我们修改为Service Task(服务类型)
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZiLNZoH8-1622163855113)(http://img.shaochenfeng.com/20210526063519.png)]
- 新增一个结束节点,并命名为“收到付款”
配置“刷卡付款”节点
服务类型有很多执行的方法,这次我们使用“external(外部)”任务模式
- 点击“取信用卡”节点,在右侧的面板中修改Implementation(实现)为
External
,修改Topic为charge-card
配置流程参数
- 点击画布的空白处,右侧的面板会显示当前流程本身的参数
这里我们修改id为payment-retrieval,id是区分流程的标识
然后修改Name 为“付款流程”
最后确保 Executable 是勾选的,只有Executable被勾选,流程才能执行
- 点击 File > Save File As… 或者直接点击工具栏中的保存按钮,将流程保存到你喜欢的位置,命名为
payment.bpmn
到此第一部分结束,如果想直接获取到现在为止的进度,可以使用如下命令
git checkout -f Step-1
3.用java或NodeJS实现外部任务
在完成上面流程的编辑后,现在实现“刷卡付款”的业务逻辑
Camunda 可以使多种语言实现业务逻辑,本文将演示java和nodejs两种方式,你可以任意选择喜欢的一种
a)使用JAVA
需要JAVA1.8+,maven(有的IDE自带),IDE
使用喜欢的ide创建一个maven项目,添加maven依赖如下
<dependencies>
<dependency>
<groupId>org.camunda.bpm</groupId>
<artifactId>camunda-external-task-client</artifactId>
<version>7.15.0</version>
</dependency>