Activiti6.0流程引擎学习——(8)Activiti流程引擎源码初步介绍

我们开始讲解一下Activiti的源码文件的内容。

我们打开整个文件夹就可以看到以下的文件,这也就是Activiti的文件结构。

Activiti6.0流程引擎学习——(8)Activiti流程引擎源码初步介绍_第1张图片

 

1、distro与eclipse

distro是发布用的目录,eclipse是开发的配置文件

Activiti6.0流程引擎学习——(8)Activiti流程引擎源码初步介绍_第2张图片

2、modules文件

modules是重要的源码模块包结构。

Activiti6.0流程引擎学习——(8)Activiti流程引擎源码初步介绍_第3张图片

3、qa文件

qa中文件关于测试使用的配置脚本文件

Activiti6.0流程引擎学习——(8)Activiti流程引擎源码初步介绍_第4张图片

4、scripts文件

scripts一些启动相关的脚本,start-ui.sh启动UI

Activiti6.0流程引擎学习——(8)Activiti流程引擎源码初步介绍_第5张图片

5、查看pom.xml文件

以下是关于对于流程模型的管理或流程校验的操作模块。我们可以看到最下面的是activiti-engine。maven从上到下编译,可以看出Activiti引擎构建是依赖之前的这些模型构建的。

Activiti6.0流程引擎学习——(8)Activiti流程引擎源码初步介绍_第6张图片

6、modules下activiti-engine下的java文件介绍

总体文件预览如下:

Activiti6.0流程引擎学习——(8)Activiti流程引擎源码初步介绍_第7张图片

文件名  介绍
cfg 配置文件相关,Activiti启动依赖的配置文件。
compatibility 跟兼容性相关的包结构,Activiti5到6不兼容根据这里的内容进行适配。
debug 调试相关的内容,看到Activiti内部运行的机制。
delegate 制定的节点文件。
event 事件和监听机制。
form 表单,用来定义通用的表单。
history 运行产生的数据迁移到这里。
identity 权限与身份认证的配置。
impl 对应的实现包。
logging 跟日志相关,里面只有一个LogMDC类。
management 管理相关的接口与API。
parse 流程是XML文件,需要解析,parse用来解析相关的工作。
query 跟数据库操作的抽象查询接口。
repository 流程部署到数据库的一些文件。
runtime 与history有一定对应关系。执行中数据在这里处理。结束后移除到history中。
task 流程节点遇到人工处理的作业相关文件。
test 支持单元或集成测试的工作类、帮助类。

Activiti6.0流程引擎学习——(8)Activiti流程引擎源码初步介绍_第8张图片

engine目录下面是一些相关的异常文件、重要的API与类。我们看出越是重要的API越是放在文件的最外面,可以让使用者越快的找到它们。

7、modules下activiti-engine下的resources文件介绍

Activiti6.0流程引擎学习——(8)Activiti流程引擎源码初步介绍_第9张图片

db:跟数据库相关的文件。其中create就是创建的脚本。drop关于删除的脚本。

Activiti6.0流程引擎学习——(8)Activiti流程引擎源码初步介绍_第10张图片

我们先看看create文件下的内容:

可以看到一个规律,每三个脚本对应一个数据库,支持db2、h2、hsql、mssql、mysql、oracle、postgres数据库。

Activiti6.0流程引擎学习——(8)Activiti流程引擎源码初步介绍_第11张图片 

下图我们打开activiti.oracle.create.history.sql文件,可以看到里面的sql脚本。

Activiti6.0流程引擎学习——(8)Activiti流程引擎源码初步介绍_第12张图片


mapping:是mybatis的对应文件。

Activiti6.0流程引擎学习——(8)Activiti流程引擎源码初步介绍_第13张图片

以下是其中一个很普通发对mybatis配置的文件。

Activiti6.0流程引擎学习——(8)Activiti流程引擎源码初步介绍_第14张图片

properties:各种数据库的配置文件。

Activiti6.0流程引擎学习——(8)Activiti流程引擎源码初步介绍_第15张图片

upgrade:设计到版本升级时对sql语句的升级。每个小版本的都有。

Activiti6.0流程引擎学习——(8)Activiti流程引擎源码初步介绍_第16张图片

engine中的deployer:一些小图标,比如流程图文件生成一个流程图时,不同流程节点对应不同的小图标。

Activiti6.0流程引擎学习——(8)Activiti流程引擎源码初步介绍_第17张图片

其中的一个小图标文件:

Activiti6.0流程引擎学习——(8)Activiti流程引擎源码初步介绍_第18张图片

7、modules下其他文件介绍

activiti-spring:关于Spring集成模块。

Activiti6.0流程引擎学习——(8)Activiti流程引擎源码初步介绍_第19张图片

activiti-form-engine:表单引擎模块

Activiti6.0流程引擎学习——(8)Activiti流程引擎源码初步介绍_第20张图片

activiti-Idap:用于跟用户做集成模块

Activiti6.0流程引擎学习——(8)Activiti流程引擎源码初步介绍_第21张图片

activiti-bpmn-converter:模型转换模块

Activiti6.0流程引擎学习——(8)Activiti流程引擎源码初步介绍_第22张图片

activiti-image-generator:流程图绘制模块

Activiti6.0流程引擎学习——(8)Activiti流程引擎源码初步介绍_第23张图片

你可能感兴趣的:(activiti)