每次我修改和部署一个流程,版本号都在增加。我明白为什么它在增加。但是是否有强制使用预定义版本并且部署将仅覆盖该版本。原因是即使是小错误修复,我也不希望版本发生变化。
最佳答案
您是在谈论生产还是开发?
在开发中,你可以配置 processes.xml因此所有实例和旧版本的流程都被删除:
<process-archive>
<properties>
<property name="isDeleteUponUndeploy">true</property>
</properties>
</process-archive>
在生产环境中,您不希望删除正在运行或已完成的实例。您可能希望将正在运行的实例迁移到下一个版本,但这不是通用的,它取决于流程和所做的更改。请务必阅读 process-versioning-version-migration来自用户指南。
第三种方法是调用服务(表达式/委托(delegate)/监听器),而不是在 bpmn 内部进行硬建模。例如,如果您在排他性网关流中写入“${price > 500}”,则当您部署值为“1000”的“修复”时,您将拥有一个新的流程版本。如果您设计调用“${myPriceCalculator.limitExceeded(price)}”的流程应用程序,您可以部署新的 war ,但流程保持不变。
https://stackoverflow.com/questions/29263322/