Flowable深入浅出-8 Flowable-Modeler集成之Flowable-modeler源码编译

8 Flowable-Modeler集成之Flowable-modeler源码编译

背景

上一期我们介绍了如何编译整个Flowable的源码,但是在某些情况下我们并不需要idm/cmmn等引擎,本次我们介绍如何只编译完成Flowable的modeler,为某些需要只集成modeler的用户提供基础。

源码下载

参考上一篇文章完成源码的下载和配置,文章地址:https://blog.csdn.net/houyj1986/article/details/85725202
注意:配置环境期间不要修改POM文件。

思路分析与目标

目的为了能够完成modeler编译,并且能够调试modeler,所有我们要去除所有不依赖的包,只添加modeler依赖的包,进入modeler的入口,完成启动。

  1. 分析modeler
    modeler的工程如下:
    在这里插入图片描述
    下面有几个子项目,我们查看POM的默认模块配置位于982行,我们修改为只有这几个项目
  2. 操作步骤 :一步步编译,根据错误不停的添加依赖的工程
  3. 找到启动入口,查看是否启动成功

Modeler模块编译,启动

(1) POM修改结果如下,位于主POM.xml中:


	<modules>
		<!--<module>modules/flowable-bpmn-model</module>-->
		<!--<module>modules/flowable-process-validation</module>-->
		<!--<module>modules/flowable-bpmn-layout</module>-->
		<!--<module>modules/flowable-image-generator</module>-->
		<!--<module>modules/flowable-bpmn-converter</module>-->
		<module>modules/flowable-engine-common-api</module>
		<module>modules/flowable-engine-common</module>
		<module>modules/flowable-entitylink-service-api</module>
		<module>modules/flowable-entitylink-service</module>
		<module>modules/flowable-idm-api</module>
		<module>modules/flowable-idm-engine</module>
		<!--<module>modules/flowable-idm-engine-configurator</module>-->
		<!--<module>modules/flowable-form-model</module>-->
		<module>modules/flowable-form-api</module>
		<module>modules/flowable-dmn-model</module>
		<module>modules/flowable-dmn-api</module>
		<module>modules/flowable-content-api</module>
        <!--<module>modules/flowable-cmmn-api</module>-->
        <!--<module>modules/flowable-cmmn-model</module>-->
        <!--<module>modules/flowable-cmmn-converter</module>-->
        <module>modules/flowable-cmmn-image-generator</module>
        <!--<module>modules/flowable-cmmn-engine</module>-->
        <module>modules/flowable-variable-service-api</module>
		<module>modules/flowable-variable-service</module>
        <module>modules/flowable-identitylink-service-api</module>
		<module>modules/flowable-identitylink-service</module>
        <module>modules/flowable-task-service-api</module>
        <module>modules/flowable-task-service</module>
        <module>modules/flowable-job-service-api</module>
        <module>modules/flowable-job-service</module>
        <module>modules/flowable-job-spring-service</module>
		<!--<module>modules/flowable-engine</module>-->
		<module>modules/flowable-app-engine-api</module>
		<module>modules/flowable-app-engine</module>
		<module>modules/flowable-spring-security</module>
	<!--</modules>-->
	<!--<modules>-->
		<module>modules/flowable-bpmn-model</module>
		<module>modules/flowable-process-validation</module>
		<module>modules/flowable-image-generator</module>
		<module>modules/flowable-bpmn-converter</module>
		<module>modules/flowable-engine</module>
		<!--<module>modules/flowable-secure-javascript</module>-->
		<module>modules/flowable-groovy-script-static-engine</module>
		<module>modules/flowable-bpmn-layout</module>
		<module>modules/flowable-json-converter</module>
		<module>modules/flowable-spring-common</module>
		<module>modules/flowable-engine-configurator</module>
		<module>modules/flowable-spring-configurator</module>
		<module>modules/flowable-app-engine-spring</module>
		<module>modules/flowable-app-engine-rest</module>
		<!--<module>modules/flowable-dmn-model</module>-->
		<module>modules/flowable-dmn-json-converter</module>
		<module>modules/flowable-dmn-xml-converter</module>
		<module>modules/flowable-dmn-engine</module>
		<module>modules/flowable-dmn-engine-configurator</module>
		<module>modules/flowable-dmn-spring</module>
		<module>modules/flowable-dmn-spring-configurator</module>
		<module>modules/flowable-dmn-rest</module>
		<module>modules/flowable-cmmn-api</module>
		<module>modules/flowable-cmmn-model</module>
		<module>modules/flowable-cmmn-converter</module>
		<module>modules/flowable-cmmn-json-converter</module>
		<module>modules/flowable-cmmn-engine</module>
		<module>modules/flowable-cmmn-engine-configurator</module>
		<module>modules/flowable-cmmn-spring</module>
		<module>modules/flowable-cmmn-spring-configurator</module>
		<module>modules/flowable-cmmn-rest</module>
		<module>modules/flowable-form-model</module>
		<module>modules/flowable-form-json-converter</module>
		<module>modules/flowable-form-engine</module>
		<module>modules/flowable-form-engine-configurator</module>
		<module>modules/flowable-form-spring</module>
		<module>modules/flowable-form-spring-configurator</module>
		<module>modules/flowable-form-rest</module>
		<module>modules/flowable-content-engine</module>
		<module>modules/flowable-content-engine-configurator</module>
		<module>modules/flowable-content-spring</module>
		<module>modules/flowable-content-spring-configurator</module>
		<module>modules/flowable-content-rest</module>
		<module>modules/flowable-common-rest</module>
		<module>modules/flowable-rest</module>
		<!--<module>modules/flowable-app-rest</module>-->
		<module>modules/flowable-idm-engine-configurator</module>
		<module>modules/flowable-idm-spring</module>
		<module>modules/flowable-idm-spring-configurator</module>
		<module>modules/flowable-idm-rest</module>
		<module>modules/flowable-spring</module>
		<!--<module>modules/flowable5-engine</module>-->
		<!--<module>modules/flowable5-compatibility</module>-->
		<!--<module>modules/flowable5-spring</module>-->
		<!--<module>modules/flowable5-spring-compatibility</module>-->
		<module>modules/flowable-spring-boot</module>
		<!--<module>modules/flowable-cxf</module>-->
		<!--<module>modules/flowable-mule</module>-->
		<!--<module>modules/flowable-http</module>-->
		<!--<module>modules/flowable-camel</module>-->
		<!--<module>modules/flowable-camel-cdi</module>-->
		<!--<module>modules/flowable-cdi</module>-->
		<!--<module>modules/flowable-osgi</module>-->
		<module>modules/flowable-ldap</module>
		<!--<module>modules/flowable-ldap-configurator</module>-->
		<!--<module>modules/flowable-jmx</module>-->
		<!--<module>modules/flowable-jms-spring-executor</module>-->
		<module>modules/flowable-ui-common</module>
		<!--<module>modules/flowable-ui-edge</module>-->
		<!--<module>modules/flowable-ui-idm</module>-->
		<module>modules/flowable-ui-modeler</module>
		<!--<module>modules/flowable-ui-task</module>-->
		<!--<module>modules/flowable-ui-admin</module>-->
		<module>tooling/archetypes/flowable-archetype-unittest</module>
	</modules>

(2)flowable-ui-task-app\pom.xml,这个xml的tomcat不要用外部的,使用嵌入式,方便我们后续直接通过代码启动调试。修改后

 <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
            <!--<scope>provided</scope>-->
        </dependency>

(3)到此已经修改,完成,单击启动类启动,启动类在下图所示的包中
在这里插入图片描述
(4)在启动类上点击右键,Run,就可以完成启动,启动结果如下:
在这里插入图片描述

遗留问题

由于modeler采用了Spring Security和idm集成了认证,所以导致我们的modeler虽然启动了,但是无法显示页面,下一个专题我们将修复该问题,并提供一版本源码可以独立运行的。

版权

版权所有,侵权必究,代码与文章,使用、copy、转载请联系作者。由书山登峰人创作。

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

书山登峰人

精品不易

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值