Activiti工程搭建

简介: 本教程介绍如何在IntelliJ IDEA中创建Maven工程并安装ActiBPM插件,包含插件下载、版本兼容性修复及配置方法,最后引入Activiti相关依赖,完成流程引擎环境搭建。

1 创建工程

借助于Idea创建一个简单的Maven工程,GAV坐标信息填写可以随意

2 插件安装

2.1 插件下载

下载此jar包:📎actibpm.jar

2.2 idea磁盘安装插件

选择上述下载的jar包,如果出现下述错误信息,请查看2.3修复方案

2.3 idea版本插件不兼容修复方案

  1. 查看自己idea对应版本

例如我的弹窗信息如下(Build后面的关键信息),所以版本号是:203.7717.56

  1. 官网查看对应版本的官网版本号

如果上述弹窗没有,也可以去官网查看,链接:https://www.jetbrains.com/zh-cn/idea/download/other.html

  1. 压缩包打开jar,注意不是解压是打开

  1. 双击打开META-INF里的文件

  1. 修改配置文件中版本号信息

左边是修改后,右边是修改前,需要修改的是

  • 将右侧红色改成左侧绿色
  • 左侧until-build没有则追加
  • 修改的版本号信息就是你自己对应idea的版本
  1. 将修改后的文件覆盖原jar中的文件
  2. idea重新选择加载

  1. 重启idea

2.4 验证插件

新建文件,可以选择bpmn

创建之后,有右侧的图标可以看到,就是说明插件安装成功

3 依赖引入

<!-- springCloud -->
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-dependencies</artifactId>
    <version>Hoxton.SR10</version>
    <type>pom</type>
    <scope>import</scope>
</dependency>
<!-- springboot -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
    <version>2.3.10.RELEASE</version>
</dependency>
<!-- mysql驱动 -->
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.47</version>
</dependency>
<!--mybatis-->
<dependency>
    <groupId>org.mybatis</groupId>
    <artifactId>mybatis</artifactId>
    <version>3.5.6</version>
</dependency>
<!--lang3-->
<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-lang3</artifactId>
    <version>3.10</version>
</dependency>
<!--activity-->
<dependency>
    <groupId>org.activiti</groupId>
    <artifactId>activiti-spring-boot-starter</artifactId>
    <version>7.0.0.SR1</version>
    <exclusions>
        <exclusion>
            <artifactId>commons-io</artifactId>
            <groupId>commons-io</groupId>
        </exclusion>
        <exclusion>
            <artifactId>commons-lang3</artifactId>
            <groupId>org.apache.commons</groupId>
        </exclusion>
        <exclusion>
            <artifactId>mybatis</artifactId>
            <groupId>org.mybatis</groupId>
        </exclusion>
    </exclusions>
</dependency>
<!--activiti可以绘制流程的的依赖-->
<dependency>
    <groupId>org.activiti</groupId>
    <artifactId>activiti-image-generator</artifactId>
    <version>7.0.0.SR1</version>
    <exclusions>
        <exclusion>
            <artifactId>commons-io</artifactId>
            <groupId>commons-io</groupId>
        </exclusion>
    </exclusions>
</dependency>
<!--junit-->
<dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>4.5</version>
    <scope>test</scope>
</dependency>

4 启动类创建

5 配置文件创建

注意需要创建一个数据库:activiti,名称不一定要保持一致

工程配置文件,application.yml:

spring:
  application:
    name: activiti
  datasource:
    url: jdbc:mysql://localhost:3306/activiti?characterEncoding=UTF-8
    username: root
    password: root
    driver-class-name: com.mysql.jdbc.Driver
server:
  port: 8080

activiti配置文件,activiti.cfg.xml:

<beans xmlns="http://www.springframework.org/schema/beans"
   xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd">
<bean id="processEngineConfiguration" class="org.activiti.engine.impl.cfg.StandaloneProcessEngineConfiguration">
    <!-- 连接数据的配置 -->
    <property name="jdbcDriver" value="com.mysql.jdbc.Driver"/>
    <property name="jdbcUrl" value="jdbc:mysql://localhost:3306/activiti?characterEncoding=utf8"/>
    <property name="jdbcUsername" value="root"/>
    <property name="jdbcPassword" value="root"/>
    <!--  不自动创建表,需要表存在 "false";
          先删除表,再创建表  "create-drop";
          如果表不存在,先创建表"true";
    -->
    <property name="databaseSchemaUpdate" value="true"/>
</bean>
</beans>

上述两个文件位置如下:

相关文章
|
4月前
|
人工智能 自然语言处理 数据可视化
Agentic RAG 正式工程化!重新定义企业智能问答
RAG已成企业AI知识库主流,但传统方案存在被动检索、易幻觉等问题。2025年Agentic RAG成为行业分水岭,实现主动规划、推理与纠错。JBoltAI V4.3率先在Java生态落地工程化AgentRAG,支持五步推理链路与全程可视化,开箱即用、安全可控。(239字)
467 0
|
9月前
|
微服务 监控
认识Seata
Seata是阿里巴巴开源的分布式事务解决方案,通过事务协调者(TC)、事务管理器(TM)和资源管理器(RM)协同工作,实现全局事务一致性。支持XA、AT、TCC、SAGA四种模式,其中AT为默认模式,具备最终一致性与低侵入性,广泛应用于微服务架构中。
认识Seata
|
9月前
|
Java Spring UED
Spring Cloud熔断降级
熔断降级是应对服务雪崩的核心手段。熔断通过断路器统计异常或慢请求比例,超阈值后拦截所有请求,防止系统崩溃;降级则在调用失败时返回默认数据或友好提示,提升用户体验。二者结合,在服务异常时快速熔断并触发降级逻辑。断路器有closed、open、half-open三种状态,实现自动恢复机制,保障系统稳定性。
Spring Cloud熔断降级
|
9月前
|
Java 调度
什么是分片广播任务
本文介绍XXL-JOB的分片广播机制,通过集群执行器动态分片处理任务。调度中心为每个执行器分配分片参数,实现任务并行处理,提升效率。适用于大数据量分布式场景,支持动态扩容,每台机器处理部分数据,显著降低耗时。开发时可通过`getShardIndex()`和`getShardTotal()`获取分片信息,灵活控制业务逻辑。
|
9月前
|
应用服务中间件 微服务
微服务雪崩问题
高并发下商品服务占用过多Tomcat连接,可能导致接口延迟或阻塞,进而影响依赖它的购物车服务,引发连锁反应。若不加控制,将导致整个微服务集群雪崩。微服务保护旨在防止此类级联失败,保障系统稳定。
|
9月前
|
消息中间件 存储 运维
RabbitMQ介绍
RabbitMQ是基于Erlang开发的开源消息中间件,实现应用程序间的异步通信。核心组件包括生产者、消费者、队列、交换机和虚拟主机,支持消息路由与隔离。通过管理控制台可便捷运维。官网:https://www.rabbitmq.com/
|
9月前
|
运维 监控 Java
【Linux基础】开发日常:盘点后端开发中最高频使用的10个Linux命令
本文为后端开发者整理了日常运维中最常用的10个Linux命令,涵盖文件查看、日志监控、进程管理、网络排查等核心场景。从`ls`、`cd`到`tail`、`grep`,再到`ps`、`netstat`、`top`等,结合实际案例讲解高频用法,助你高效应对服务器操作,提升开发效率。
|
9月前
|
安全 Java 开发工具
工程搭建与验证
本文介绍如何使用阿里云脚手架快速搭建Spring Boot工程,并整合Spring Security实现基础安全控制。包含工程创建、代码导入、Web依赖配置、访问接口开发及Security默认登录验证,附完整代码仓库地址。
|
9月前
|
Java Sentinel 微服务
实现降级
本文介绍如何在Spring Cloud微服务中通过Sentinel实现Feign接口的降级处理。重点采用`FallbackFactory`方式,在调用方(如cart-service)为`ItemClient`接口编写降级逻辑,捕获远程调用异常并返回兜底数据。需配置Feign启用Sentinel,定义降级类实现`FallbackFactory`接口,并在`@FeignClient`中指定`fallbackFactory`。最终通过停止item-service进行测试,验证购物车页面在商品信息获取失败时仍可降级展示,保障系统稳定性。适用于服务熔断与容错场景。
实现降级
|
9月前
|
消息中间件 Java Spring
MQ收发消息
本文介绍如何使用SpringAMQP实现RabbitMQ消息收发。RabbitMQ基于AMQP协议,支持跨语言通信。通过SpringBoot整合SpringAMQP,可快速实现消息发送与接收。文中演示了创建队列、配置生产者与消费者、使用RabbitTemplate发送消息及@RabbitListener监听消息的完整流程,并简要对比了推模式与拉模式的应用场景。
MQ收发消息

热门文章

最新文章