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>

上述两个文件位置如下:

相关文章
|
3天前
|
Java Linux 开发工具
Linux
本文介绍如何将一个简单的SpringBoot应用打包并部署到Linux服务器。包括项目搭建、JAR包打包、JDK安装配置、应用上传与启动,以及通过心跳接口验证服务是否正常运行的完整流程,适用于Java应用的Linux部署入门学习。
|
6月前
|
数据安全/隐私保护
贴吧自动发帖工具, 贴吧自动评论脚本,顶贴回复发帖插件
这个代码实现了贴吧自动发帖、自动回复、获取帖子列表等功能。主要使用了requests库进行网络请求
|
3天前
|
监控 Java Sentinel
Sentinel安装与集成
介绍如何切换hmall-micro项目至dev_02分支并提交代码,强调多分支并行开发模式。随后讲解Sentinel服务保护框架的安装与配置,包括控制台部署、本地运行及项目集成,实现微服务熔断降级,并通过簇点链路监控接口。
Sentinel安装与集成
|
3天前
|
人工智能 Java 微服务
微服务保护方案
Spring Cloud微服务中,服务保护机制对保障系统稳定性至关重要,主要包括熔断、降级、超时、线程隔离和限流。熔断快速失败避免雪崩,降级提供默认响应保证核心功能,超时防止长时间等待,线程隔离限制故障影响范围,限流控制流量峰值,共同提升系统容错与可用性。
微服务保护方案
|
3天前
|
Java Sentinel 微服务
实现降级
本文介绍如何在Spring Cloud微服务中通过Sentinel实现Feign接口的降级处理。重点采用`FallbackFactory`方式,在调用方(如cart-service)为`ItemClient`接口编写降级逻辑,捕获远程调用异常并返回兜底数据。需配置Feign启用Sentinel,定义降级类实现`FallbackFactory`接口,并在`@FeignClient`中指定`fallbackFactory`。最终通过停止item-service进行测试,验证购物车页面在商品信息获取失败时仍可降级展示,保障系统稳定性。适用于服务熔断与容错场景。
实现降级
|
3天前
|
缓存 前端开发 安全
数据同步原理
Soul网关通过推拉模式实现配置数据同步,支持WebSocket、HTTP长轮询和Zookeeper三种策略。管理员在后台变更配置后,事件被发布并根据同步策略推送到网关,实现秒级更新。HTTP长轮询借鉴Apollo与Nacos设计,结合异步Servlet机制,确保准实时且高效。
数据同步原理
|
3天前
|
存储 算法 BI
xxljob本地运行
本文介绍XXL-JOB分布式任务调度框架的部署与使用,涵盖源码获取、服务端数据库配置、客户端注册及任务调度配置,支持多种路由策略与分片广播,助力高效实现定时任务管理。
 xxljob本地运行
|
3天前
|
存储 安全 Java
认证源码分析与自定义后端认证逻辑
本文深入分析Spring Security认证流程,从UsernamePasswordAuthenticationFilter切入,详解AuthenticationManager、ProviderManager及AbstractUserDetailsAuthenticationProvider的认证机制,最终实现自定义UserDetailsService,完成基于数据库的用户认证逻辑。
 认证源码分析与自定义后端认证逻辑
|
3天前
|
Java Shell 开发工具
【Git入门】Git常用命令大全:从add到push,一图胜千言
本文深入浅出地讲解Git核心概念与常用命令,涵盖工作区、暂存区、本地仓库和远程仓库三大区域,梳理从配置、克隆、提交到同步的完整流程,并介绍撤销修改、查看历史、.gitignore等实用技巧,助力开发者高效协作。
|
3天前
|
SQL 监控 druid
【性能优化】拒绝性能瓶颈!数据库连接池配置详解与调优实战
本文深入讲解数据库连接池核心原理与调优技巧,涵盖HikariCP和Druid配置要点,解析四大关键参数、黄金连接数公式及Druid监控功能,助你科学设置连接池,避免性能瓶颈。