JBPM6 流程定义版本控制

JBPM6 process definition versioning

我们在生产中部署了流程定义,许多流程实例已初始化并正在运行。

现在需要在流程定义(.bpmn 文件)中进行更改以适应其他业务场景。

我们知道我们不能只用新的 .bpmn 文件替换旧的 .bpmn 文件,因为旧的 .bpmn 文件可能会被运行中的进程引用。

处理这种情况最简单和最好的方法是什么?

注意:我们使用的是 JBPM 6.0

创建新版本:

  1. 对流程定义和项目中的任何其他内容进行编辑。
  2. 确保项目和流程定义已保存。
  3. 在项目编辑器->项目常规设置中更改版本号。
  4. 保存、构建和部署。
  5. 部署了新版本。部署 ID 将具有新版本号:

    属OU:MCTestWF1:2.0

在存储库中,项目中的每个版本都会有一个单独的版本目录。 项目的maven-metadata.xml将包含所有版本:

<?xml version="1.0" encoding="UTF-8"?>
<metadata>
  <groupId>GenusOU</groupId>
  <artifactId>MCTestWF1</artifactId>
  <versioning>
    <release>3.0</release>
    <versions>
      <version>1.0</version>
      <version>2.0</version>
      <version>3.0</version>
    </versions>
    <lastUpdated>20160825183701</lastUpdated>
  </versioning>
</metadata>