Activiti7集成SpringBoot2官方实例(二):Activiti7 Deep Dive系列 - 使用核心库

@高效码农  June 25, 2019

将Activiti 7依赖项添加到应用程序

除了Activiti 7依赖项之外,Spring Boot应用程序具有我们需要的大多数依赖项。所以让我们添加它们。我们可以使用BOM(物料清单)依赖关系,它将引入所有需要的Activiti 7依赖关系管理配置,包括所有依赖关系的正确版本。
将以下内容添加到 pom.xml:

<dependencyManagement>
 <dependencies>
 <dependency>
 <groupId>org.activiti.cloud.dependencies</groupId>
 <artifactId>activiti-cloud-dependencies</artifactId>
 <version>7.0.0.Beta3</version>
 <scope>import</scope>
 <type>pom</type>
 </dependency>
 </dependencies>
</dependencyManagement>

这将导入Activiti 7的所有依赖项管理配置。现在我们只需要添加一个Activiti 7依赖项,它支持运行Activiti流程引擎,服务任务实现(即云连接器)和事件处理程序实现(即替换流程和任务)听众)。将以下依赖项添加到pom.xml:

<dependency>
 <groupId>org.activiti</groupId>
 <artifactId>activiti-spring-boot-starter</artifactId>
</dependency>

这将带来所有Activiti和Spring依赖项需要运行嵌入在Spring Boot应用程序中的Activiti 7流程引擎。我还可以编译我们的服务任务实现和我们的流程引擎事件处理程序。

我们还不能使用这些新的依赖项运行应用程序,因为它将在 resources/processes 目录中查找流程定义。如果此目录不存在,则抛出异常并停止应用程序。

将流程定义添加到应用程序

我们现在将我们在之前的一篇文章中设计的流程定义XML文件添加到项目中。 在src/main/resources目录下创建一个名为processes 的新目录。然后将.bpmn20.xml文件复制到此目录中。您现在应该看到这样的目录结构:

├── src

│   ├── main

│   │ ├── java

│   │ │   └── org

│   │ │       └── activiti

│   │ │           └── training

│   │ │               └── activiti7apibasicprocessusertaskservicetaskevents

│   │ │                   └── Activiti7ApiBasicProcessUsertaskServicetaskEventsApplication.java

│   │ └── resources

│   │    ├── application.properties

│   │    ├── processes

│   │    │ └── sample-process.bpmn20.xml

│   │    ├── static

│   │    └── templates

这就是我们需要做的,我们现在可以测试启动应用程序。

测试包含Activiti库和进程定义的Spring Boot App

我们现在可以打包并运行应用程序,以查看所有Activiti库是否已正确加载,并且正确读取了流程定义而没有错误。

$ mvn clean package

$ java -jar target / activiti7-api-basic-process-usertask-servicetask-events-0.0.1-SNAPSHOT.jar


添加新评论