💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
## Activiti6 学习笔记六:官方DEMO之activiti-app源码部署 ### 一、章节目标 在《Activiti 学习笔记三:官方DEMO之activiti-app》一章中其实我们已经介绍了 activiti-app 的功能,为何还会有这一章节? 其实试用了 activiti-app 之后,我们发现这个demo基本已经满足了我们对流程引擎的要求:有流程定义、有表单定义、能跑APP,能跑任务,这不就是我们要的功能?既然有了怎么办?改呀!是的,所以这节就是讲解如果用源码来跑这个项目,后面的如何改造,就要靠各位的功力了。 > 注:如果各位还是想自行实现,那么可以跳过此章节。 * * * * * ### 二、技能要求 1、git - 这个很简单,就是 git clone 、git branch 和 git checkout 而已 2、maven - 老外的项目现在很多都使用maven管理 3、tomcat - activiti-app 它是个 web 项目啦 4、linux - win环境下下载的只有github源码的主目录,这里需要用linux下的git配合 > 注:博主是个半调子java,所以研究源码的时候的,花了不少功夫来折腾相关的东西,如果你是新手司机,建议还是老老实实学半年java再来。 * * * * * ### 三、部署过程 #### 1、源码下载 首先去 https://github.com/Activiti/Activiti 下载源码,不过要注意的是源码的主干是最新的版本,版本号是7,而我们用的是 6,所以下载的时候要找到 6 版本分支的代码。 这里建议用linux的命令行来下载。 1)git clone https://github.com/Activiti/Activiti 2)进入下载好的 Activiti 文件夹,执行 git branch -a 查看所有的分支,这里的 6.x 就是我们要找的版本 ![](https://box.kancloud.cn/1b82c7fdbd21639f738087a7829051cc_365x158.png) 3)执行 git checkout/origin/6.x 切换代码,然后再执行 ls 可以看到 6 版本分支的代码了。 ![](https://box.kancloud.cn/8f9226bb327f06fab8993d86c9d4a99a_597x43.png) 4)接着我们进入目录下的 modules/activiti-ui,其中 activiti-app、activiti-app-conf、activiti-app-logic和activiti-app-rest就是我们这次部署的主角。 ![](https://box.kancloud.cn/1354f4cd6539bc67a04134181de9727e_483x173.png) #### 2、项目配置 使用Myeclipse分别打开这4个项目,然后将项目转换为maven项目。 ![](https://box.kancloud.cn/fc3f6c488c4a8fdfafb2d5399cb71f42_160x86.png) 分别修改POM里面的设置,将依赖的 activiti-ui-root 版本全部改成 6.0.0。 ![](https://box.kancloud.cn/dbacaa572f2d0933509d46d1ab6bec21_558x239.png) 注:依赖里面使用的是 6.0.1版本,但是由于官方没有上传这个版本到 maven 的主库,所以一定会更新不下来!所以这里我们还是要用回 6.0.0的版本。 配置完成后,接下来等待 maven 更新依赖就可以了。 #### 3、启动项目 由于 activiti-ui 是一个web项目,所以我们直接使用 tomcat 来启动项目,然后 tomcat 就会在其 webapps 目录下生成一个可运行的项目了。 ![](https://box.kancloud.cn/ed973d910b378d13475f554767c8d3af_499x150.png) 但是这里目前有一个坑,就是生成项目的时候,不会自动生成 apache-tomcat-7.0.82\webapps\activiti-app\WEB-INF\classes\META-INF\activiti-app\activiti-app.properties 这个配置文件,所以我们复制一下 activiti-app 下的 activiti-app.properties 文件到上面的目录中。 ![](https://box.kancloud.cn/387d297170c95df495ad9e8d1163d9bf_284x110.png) ![](https://box.kancloud.cn/f8479ea989c4e3b93bddbe16d38e9ea5_819x112.png) OK,现在我们再次运行项目,就可以跑起来了。 ![](https://box.kancloud.cn/f330a0158cf297ca966d68050cc0f687_340x227.png) ![](https://box.kancloud.cn/05d09d8106f37ff26c88a7cc90673113_648x147.png) 启动完成后,浏览器直接打开 http://localhost:8080/activiti-app 路径即可。 #### 4、改造项目 前面的文档说到,不同的子项目划分不同的逻辑,但是我们在修改的时候,修改 activiti-app、activiti-app-conf、activiti-app-logic和activiti-app-rest 中的任何一个都可以直接生效。 例如我修改了 activiti-app-conf,然后eclipse就会直接重新加载,在console中可以看到相关内容。 ![](https://box.kancloud.cn/c7f0a9c1cbc6b189dbd49040f5d1864a_734x55.png) ![](https://box.kancloud.cn/bf610f1bb1f25c16f4adc3ad1b60f26c_736x56.png) * * * * * ### 四、章节小结 本章只是讲解了如何部署这个项目,后续会有章节来解析源码。