<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <groupId>cn.labzen</groupId>
  <artifactId>dependencies</artifactId>
  <packaging>pom</packaging>
  <version>1.9.2</version>
  <name>Labzen.Dependencies</name>
  <description>Labzen Dependencies</description>
  <url>https://github.com/labzen/dependencies</url>

  <licenses>
    <license>
      <name>The Apache License, Version 2.0</name>
      <url>https://www.apache.org/licenses/LICENSE-2.0.txt</url>
    </license>
  </licenses>

  <organization>
    <name>Labzen</name>
    <url>https://labzen.cn</url>
  </organization>

  <developers>
    <developer>
      <name>Dean Zhao</name>
      <email>rcarlosdasilva@163.com</email>
      <timezone>+8</timezone>
    </developer>
  </developers>

  <scm>
    <url>https://github.com/labzen/dependencies</url>
    <connection>scm:git:git@github.com:labzen/dependencies.git</connection>
    <developerConnection>scm:git:git@github.com:labzen/dependencies.git</developerConnection>
    <tag>HEAD</tag>
  </scm>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

    <kotlin.version>1.9.10</kotlin.version>

    <!--IO.Platform将会进入EOL，使用spring-boot-dependencies作为最新的BOM引入-->
    <!--May 18, 2023-->
    <bom.spring.boot>2.6.15</bom.spring.boot>
    <!--Jun 29, 2023-->
    <bom.spring.cloud>2021.0.8</bom.spring.cloud>
    <!--Jul 26, 2023-->
    <bom.spring.cloud.alibaba>2022.0.0.0</bom.spring.cloud.alibaba>
    <!--Nov 18, 2022-->
    <bom.spring.data>2021.1.10</bom.spring.data>
    <!--Jul 18, 2023-->
    <bom.spring.security>5.6.12</bom.spring.security>
    <!--Apr 20, 2022-->
    <bom.spring.session>2021.1.3</bom.spring.session>
    <!-- Apr 06, 2022 -->
    <bom.spring.statemachine>3.1.0</bom.spring.statemachine>
    <!-- it's NOT going to be imported -->
    <bom.spring.vault>2.3.1</bom.spring.vault>
    <bom.netty>4.1.76.Final</bom.netty>
    <bom.activiti>7.1.0-M16</bom.activiti>

    <spring.shell.version>2.0.1.RELEASE</spring.shell.version>
    <slf4j.version>2.0.13</slf4j.version>
    <logback.version>1.5.6</logback.version>
    <reload4j.version>1.2.25</reload4j.version>
    <jupiter.version>5.9.0-M1</jupiter.version>
    <hamcrest.version>2.2</hamcrest.version>
    <mockito.version>4.5.1</mockito.version>
    <jmh.version>1.35</jmh.version>

    <jsr305.version>3.0.2</jsr305.version>
    <guava.version>32.1.1-jre</guava.version>
    <jackson.version>2.15.3</jackson.version>
    <fastjson.version>2.0.12</fastjson.version>
    <snakeyaml.version>2.2</snakeyaml.version>
    <lombok.version>1.18.24</lombok.version>
    <cglib.version>3.3.0</cglib.version>
    <jna.version>5.14.0</jna.version>
    <oshi.version>6.4.9</oshi.version>
    <javacv.version>1.5.10</javacv.version>
    <caffeine.version>3.1.0</caffeine.version>
    <redisson.version>3.17.1</redisson.version>
    <ehcache.version>2.10.9.2</ehcache.version>
    <jaxb.api.version>2.4.0-b180830.0359</jaxb.api.version>
    <jaxb.runtime.version>3.0.2</jaxb.runtime.version>
    <!--官方建议使用最新的8版本驱动，提供更好的兼容性-->
    <mysql.version>8.0.29</mysql.version>
    <postgresql.version>42.5.4</postgresql.version>
    <sqlite.version>3.41.2.2</sqlite.version>
    <h2.version>2.2.220</h2.version>

    <commons.lang3.version>3.12.0</commons.lang3.version>
    <commons.io.version>2.11.0</commons.io.version>
    <commons.fileupload.version>1.5</commons.fileupload.version>
    <commons.compress.version>1.21</commons.compress.version>
    <commons.crypto.version>1.1.0</commons.crypto.version>
    <commons.email.version>1.5</commons.email.version>
    <commons.net.version>3.9.0</commons.net.version>
    <commons.beanutils.version>1.9.4</commons.beanutils.version>

    <server.jetty.version>11.0.15</server.jetty.version>
    <server.undertow.version>2.3.7.Final</server.undertow.version>
    <server.tomcat.version>9.0.84</server.tomcat.version>

    <bouncycastle.version>1.70</bouncycastle.version>
    <protobuf.version>3.21.12</protobuf.version>
    <grpc.version>1.53.0</grpc.version>
    <netty.version>4.1.103.Final</netty.version>
    <okhttp3.version>4.9.3</okhttp3.version>
    <okhttp.digest.version>2.1</okhttp.digest.version>
    <retrofit.version>2.9.0</retrofit.version>
    <usb.version>1.3.0</usb.version>
    <ahc.version>2.12.3</ahc.version>
    <shiro.version>1.11.0</shiro.version>
    <druid.version>1.2.9</druid.version>
    <mybatis.version>3.5.15</mybatis.version>
    <mybatis-spring.version>2.1.2</mybatis-spring.version>
    <mybatis-flex.version>1.8.9</mybatis-flex.version>
    <mybatis-plus.version>3.5.5</mybatis-plus.version>
    <mybatis-plus-dynamic.version>4.3.0</mybatis-plus-dynamic.version>
    <mybatis-plus-join.version>1.4.8.1</mybatis-plus-join.version>
    <mybatis-page-helper.version>5.3.3</mybatis-page-helper.version>
    <mybatis-page-helper-starter.version>1.4.7</mybatis-page-helper-starter.version>
    <p6spy.version>3.9.1</p6spy.version>
    <user-agent-utils.version>1.21</user-agent-utils.version>
    <poi.version>5.2.2</poi.version>
    <xstream.version>1.4.20</xstream.version>
    <kxml2.version>2.3.0</kxml2.version>
    <reflections.version>0.10.2</reflections.version>
    <javassist.version>3.28.0-GA</javassist.version>
    <jjwt.version>0.11.5</jjwt.version>
    <mapstruct.version>1.5.5.Final</mapstruct.version>
    <jsoup.version>1.15.4</jsoup.version>
    <springfox.version>3.0.0</springfox.version>
    <!-- 这是最后一个基于1.8jdk版本的 -->
    <t-io.version>3.7.5.v20211028-RELEASE</t-io.version>
    <maven.invoker.version>3.2.0</maven.invoker.version>
    <maven.model.version>3.8.5</maven.model.version>
  </properties>

  <dependencyManagement>
    <dependencies>
      <!-- Spring Boot IO Platform Bom Import -->
      <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-dependencies</artifactId>
        <version>${bom.spring.boot}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <!-- Spring Cloud Bom Import -->
      <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-dependencies</artifactId>
        <version>${bom.spring.cloud}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <!-- Alibaba Could Bom Import -->
      <dependency>
        <groupId>com.alibaba.cloud</groupId>
        <artifactId>spring-cloud-alibaba-dependencies</artifactId>
        <version>${bom.spring.cloud.alibaba}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <!-- Spring Data Bom Import -->
      <dependency>
        <groupId>org.springframework.data</groupId>
        <artifactId>spring-data-bom</artifactId>
        <version>${bom.spring.data}</version>
        <scope>import</scope>
        <type>pom</type>
      </dependency>
      <!-- Spring Security Bom Import -->
      <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-bom</artifactId>
        <version>${bom.spring.security}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <!-- Spring Session Bom Import -->
      <dependency>
        <groupId>org.springframework.session</groupId>
        <artifactId>spring-session-bom</artifactId>
        <version>${bom.spring.session}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <!-- Spring State Machine Bom Import -->
      <dependency>
        <groupId>org.springframework.statemachine</groupId>
        <artifactId>spring-statemachine-bom</artifactId>
        <version>${bom.spring.statemachine}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <!-- Netty Bom Import -->
      <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-bom</artifactId>
        <version>${netty.version}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <!-- Activiti Bom Import -->
      <!-- need repository activiti-releases -->
      <dependency>
        <groupId>org.activiti</groupId>
        <artifactId>activiti-dependencies</artifactId>
        <version>${bom.activiti}</version>
        <scope>import</scope>
        <type>pom</type>
      </dependency>
      <!--//////////////////////////////////////////////////////////////////-->

      <!-- about kotlin lang -->
      <dependency>
        <groupId>org.jetbrains.kotlin</groupId>
        <artifactId>kotlin-reflect</artifactId>
        <version>${kotlin.version}</version>
      </dependency>
      <dependency>
        <groupId>org.jetbrains.kotlin</groupId>
        <artifactId>kotlin-stdlib</artifactId>
        <version>${kotlin.version}</version>
      </dependency>
      <dependency>
        <groupId>org.jetbrains.kotlin</groupId>
        <artifactId>kotlin-stdlib-common</artifactId>
        <version>${kotlin.version}</version>
      </dependency>
      <dependency>
        <groupId>org.jetbrains.kotlin</groupId>
        <artifactId>kotlin-stdlib-jdk8</artifactId>
        <version>${kotlin.version}</version>
      </dependency>
      <dependency>
        <groupId>org.jetbrains.kotlin</groupId>
        <artifactId>kotlin-stdlib-jdk7</artifactId>
        <version>${kotlin.version}</version>
      </dependency>
      <!--//////////////////////////////////////////////////////////////////-->

      <!-- about Spring -->
      <dependency>
        <groupId>org.springframework.shell</groupId>
        <artifactId>spring-shell-starter</artifactId>
        <version>${spring.shell.version}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-logging</artifactId>
        <version>${bom.spring.boot}</version>
        <exclusions>
          <exclusion>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-to-slf4j</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.slf4j</groupId>
            <artifactId>jul-to-slf4j</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <!--//////////////////////////////////////////////////////////////////-->

      <!-- about apache commons -->
      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-lang3</artifactId>
        <version>${commons.lang3.version}</version>
      </dependency>
      <dependency>
        <groupId>commons-io</groupId>
        <artifactId>commons-io</artifactId>
        <version>${commons.io.version}</version>
      </dependency>
      <dependency>
        <groupId>commons-fileupload</groupId>
        <artifactId>commons-fileupload</artifactId>
        <version>${commons.fileupload.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-compress</artifactId>
        <version>${commons.compress.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-crypto</artifactId>
        <version>${commons.crypto.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-email</artifactId>
        <version>${commons.email.version}</version>
      </dependency>
      <dependency>
        <groupId>commons-net</groupId>
        <artifactId>commons-net</artifactId>
        <version>${commons.net.version}</version>
      </dependency>
      <dependency>
        <groupId>commons-beanutils</groupId>
        <artifactId>commons-beanutils</artifactId>
        <version>${commons.beanutils.version}</version>
      </dependency>
      <!--//////////////////////////////////////////////////////////////////-->

      <!-- about server -->
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-server</artifactId>
        <version>${server.jetty.version}</version>
      </dependency>
      <dependency>
        <groupId>io.undertow</groupId>
        <artifactId>undertow-servlet</artifactId>
        <version>${server.undertow.version}</version>
      </dependency>
      <dependency>
        <groupId>io.undertow</groupId>
        <artifactId>undertow-core</artifactId>
        <version>${server.undertow.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.tomcat.embed</groupId>
        <artifactId>tomcat-embed-websocket</artifactId>
        <version>${server.tomcat.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.tomcat.embed</groupId>
        <artifactId>tomcat-embed-el</artifactId>
        <version>${server.tomcat.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.tomcat.embed</groupId>
        <artifactId>tomcat-embed-core</artifactId>
        <version>${server.tomcat.version}</version>
      </dependency>
      <!--//////////////////////////////////////////////////////////////////-->

      <!-- about io -->
      <dependency>
        <groupId>com.google.protobuf</groupId>
        <artifactId>protobuf-java</artifactId>
        <version>${protobuf.version}</version>
      </dependency>
      <dependency>
        <groupId>com.google.protobuf</groupId>
        <artifactId>protobuf-java-util</artifactId>
        <version>${protobuf.version}</version>
      </dependency>
      <dependency>
        <groupId>io.grpc</groupId>
        <artifactId>grpc-protobuf</artifactId>
        <version>${grpc.version}</version>
      </dependency>
      <dependency>
        <groupId>io.grpc</groupId>
        <artifactId>grpc-netty-shaded</artifactId>
        <version>${grpc.version}</version>
      </dependency>
      <dependency>
        <groupId>io.grpc</groupId>
        <artifactId>grpc-stub</artifactId>
        <version>${grpc.version}</version>
      </dependency>
      <!--      <dependency>-->
      <!--        <groupId>io.netty</groupId>-->
      <!--        <artifactId>netty-all</artifactId>-->
      <!--        <version>${netty.version}</version>-->
      <!--      </dependency>-->
      <dependency>
        <groupId>org.asynchttpclient</groupId>
        <artifactId>async-http-client</artifactId>
        <version>${ahc.version}</version>
      </dependency>
      <dependency>
        <groupId>com.squareup.okhttp3</groupId>
        <artifactId>okhttp</artifactId>
        <version>${okhttp3.version}</version>
      </dependency>
      <dependency>
        <groupId>com.burgstaller</groupId>
        <artifactId>okhttp-digest</artifactId>
        <version>${okhttp.digest.version}</version>
      </dependency>
      <dependency>
        <groupId>com.squareup.retrofit2</groupId>
        <artifactId>retrofit</artifactId>
        <version>${retrofit.version}</version>
      </dependency>
      <dependency>
        <groupId>com.squareup.retrofit2</groupId>
        <artifactId>converter-jackson</artifactId>
        <version>${retrofit.version}</version>
      </dependency>
      <dependency>
        <groupId>org.usb4java</groupId>
        <artifactId>usb4java-javax</artifactId>
        <version>${usb.version}</version>
      </dependency>
      <!--//////////////////////////////////////////////////////////////////-->

      <!-- about crypto -->
      <dependency>
        <groupId>org.bouncycastle</groupId>
        <artifactId>bcprov-jdk15on</artifactId>
        <version>${bouncycastle.version}</version>
      </dependency>
      <dependency>
        <groupId>org.bouncycastle</groupId>
        <artifactId>bcutil-jdk15on</artifactId>
        <version>${bouncycastle.version}</version>
      </dependency>
      <dependency>
        <groupId>org.bouncycastle</groupId>
        <artifactId>bcpkix-jdk15on</artifactId>
        <version>${bouncycastle.version}</version>
      </dependency>
      <dependency>
        <groupId>org.bouncycastle</groupId>
        <artifactId>bcmail-jdk15on</artifactId>
        <version>${bouncycastle.version}</version>
      </dependency>
      <dependency>
        <groupId>org.bouncycastle</groupId>
        <artifactId>bcjmail-jdk15on</artifactId>
        <version>${bouncycastle.version}</version>
      </dependency>
      <dependency>
        <groupId>org.bouncycastle</groupId>
        <artifactId>bcpg-jdk15on</artifactId>
        <version>${bouncycastle.version}</version>
      </dependency>
      <dependency>
        <groupId>org.bouncycastle</groupId>
        <artifactId>bctls-jdk15on</artifactId>
        <version>${bouncycastle.version}</version>
      </dependency>
      <!--//////////////////////////////////////////////////////////////////-->

      <!-- about utils -->
      <dependency>
        <groupId>com.google.code.findbugs</groupId>
        <artifactId>jsr305</artifactId>
        <version>${jsr305.version}</version>
      </dependency>
      <dependency>
        <groupId>com.google.guava</groupId>
        <artifactId>guava</artifactId>
        <version>${guava.version}</version>
      </dependency>
      <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-core</artifactId>
        <version>${jackson.version}</version>
      </dependency>
      <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-annotations</artifactId>
        <version>${jackson.version}</version>
      </dependency>
      <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-databind</artifactId>
        <version>${jackson.version}</version>
      </dependency>
      <dependency>
        <groupId>com.fasterxml.jackson.datatype</groupId>
        <artifactId>jackson-datatype-jsr310</artifactId>
        <version>${jackson.version}</version>
      </dependency>
      <dependency>
        <groupId>com.fasterxml.jackson.dataformat</groupId>
        <artifactId>jackson-dataformat-xml</artifactId>
        <version>${jackson.version}</version>
      </dependency>
      <dependency>
        <groupId>com.fasterxml.jackson.dataformat</groupId>
        <artifactId>jackson-dataformat-yaml</artifactId>
        <version>${jackson.version}</version>
      </dependency>
      <dependency>
        <groupId>com.fasterxml.jackson.dataformat</groupId>
        <artifactId>jackson-dataformat-properties</artifactId>
        <version>${jackson.version}</version>
      </dependency>
      <dependency>
        <groupId>com.fasterxml.jackson.module</groupId>
        <artifactId>jackson-module-kotlin</artifactId>
        <version>${jackson.version}</version>
      </dependency>
      <dependency>
        <groupId>com.alibaba</groupId>
        <artifactId>fastjson</artifactId>
        <version>${fastjson.version}</version>
      </dependency>
      <dependency>
        <groupId>org.yaml</groupId>
        <artifactId>snakeyaml</artifactId>
        <version>${snakeyaml.version}</version>
      </dependency>
      <dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
        <version>${lombok.version}</version>
      </dependency>
      <dependency>
        <groupId>cglib</groupId>
        <artifactId>cglib</artifactId>
        <version>3.3.0</version>
      </dependency>
      <dependency>
        <groupId>net.java.dev.jna</groupId>
        <artifactId>jna</artifactId>
        <version>${jna.version}</version>
      </dependency>
      <dependency>
        <groupId>net.java.dev.jna</groupId>
        <artifactId>jna-platform</artifactId>
        <version>${jna.version}</version>
      </dependency>
      <dependency>
        <groupId>com.github.oshi</groupId>
        <artifactId>oshi-core</artifactId>
        <version>${oshi.version}</version>
      </dependency>
      <dependency>
        <groupId>org.bytedeco</groupId>
        <artifactId>javacv-platform</artifactId>
        <version>${javacv.version}</version>
      </dependency>
      <dependency>
        <groupId>org.bytedeco</groupId>
        <artifactId>javacv</artifactId>
        <version>${javacv.version}</version>
      </dependency>
      <dependency>
        <groupId>com.github.ben-manes.caffeine</groupId>
        <artifactId>caffeine</artifactId>
        <version>${caffeine.version}</version>
      </dependency>
      <dependency>
        <groupId>org.redisson</groupId>
        <artifactId>redisson</artifactId>
        <version>${redisson.version}</version>
      </dependency>
      <dependency>
        <groupId>org.redisson</groupId>
        <artifactId>redisson-spring-boot-starter</artifactId>
        <version>${redisson.version}</version>
      </dependency>
      <dependency>
        <groupId>net.sf.ehcache</groupId>
        <artifactId>ehcache</artifactId>
        <version>${ehcache.version}</version>
      </dependency>
      <dependency>
        <groupId>javax.xml.bind</groupId>
        <artifactId>jaxb-api</artifactId>
        <version>${jaxb.api.version}</version>
      </dependency>
      <dependency>
        <groupId>org.glassfish.jaxb</groupId>
        <artifactId>jaxb-runtime</artifactId>
        <version>${jaxb.runtime.version}</version>
      </dependency>
      <dependency>
        <groupId>eu.bitwalker</groupId>
        <artifactId>UserAgentUtils</artifactId>
        <version>${user-agent-utils.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.poi</groupId>
        <artifactId>poi</artifactId>
        <version>${poi.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.poi</groupId>
        <artifactId>poi-ooxml</artifactId>
        <version>${poi.version}</version>
      </dependency>
      <dependency>
        <groupId>net.sf.kxml</groupId>
        <artifactId>kxml2</artifactId>
        <version>${kxml2.version}</version>
      </dependency>
      <dependency>
        <groupId>com.thoughtworks.xstream</groupId>
        <artifactId>xstream</artifactId>
        <version>${xstream.version}</version>
      </dependency>
      <dependency>
        <groupId>org.reflections</groupId>
        <artifactId>reflections</artifactId>
        <version>${reflections.version}</version>
      </dependency>
      <dependency>
        <groupId>org.javassist</groupId>
        <artifactId>javassist</artifactId>
        <version>${javassist.version}</version>
      </dependency>
      <dependency>
        <groupId>io.jsonwebtoken</groupId>
        <artifactId>jjwt-api</artifactId>
        <version>${jjwt.version}</version>
      </dependency>
      <dependency>
        <groupId>io.jsonwebtoken</groupId>
        <artifactId>jjwt-impl</artifactId>
        <version>${jjwt.version}</version>
      </dependency>
      <dependency>
        <groupId>io.jsonwebtoken</groupId>
        <artifactId>jjwt-jackson</artifactId>
        <version>${jjwt.version}</version>
      </dependency>
      <dependency>
        <groupId>org.mapstruct</groupId>
        <artifactId>mapstruct</artifactId>
        <version>${mapstruct.version}</version>
      </dependency>
      <dependency>
        <groupId>org.mapstruct</groupId>
        <artifactId>mapstruct-processor</artifactId>
        <version>${mapstruct.version}</version>
      </dependency>
      <dependency>
        <groupId>org.jsoup</groupId>
        <artifactId>jsoup</artifactId>
        <version>${jsoup.version}</version>
      </dependency>
      <dependency>
        <groupId>io.springfox</groupId>
        <artifactId>springfox-boot-starter</artifactId>
        <version>${springfox.version}</version>
      </dependency>
      <dependency>
        <groupId>org.t-io</groupId>
        <artifactId>tio-core</artifactId>
        <version>${t-io.version}</version>
      </dependency>
      <dependency>
        <groupId>org.t-io</groupId>
        <artifactId>tio-http-server</artifactId>
        <version>${t-io.version}</version>
      </dependency>
      <dependency>
        <groupId>org.t-io</groupId>
        <artifactId>tio-websocket-server</artifactId>
        <version>${t-io.version}</version>
      </dependency>
      <!--//////////////////////////////////////////////////////////////////-->

      <!-- about persistence -->
      <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>${mysql.version}</version>
      </dependency>
      <dependency>
        <groupId>org.postgresql</groupId>
        <artifactId>postgresql</artifactId>
        <version>${postgresql.version}</version>
      </dependency>
      <dependency>
        <groupId>org.xerial</groupId>
        <artifactId>sqlite-jdbc</artifactId>
        <version>${sqlite.version}</version>
      </dependency>
      <dependency>
        <groupId>com.h2database</groupId>
        <artifactId>h2</artifactId>
        <version>${h2.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.shiro</groupId>
        <artifactId>shiro-core</artifactId>
        <version>${shiro.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.shiro</groupId>
        <artifactId>shiro-web</artifactId>
        <version>${shiro.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.shiro</groupId>
        <artifactId>shiro-spring</artifactId>
        <version>${shiro.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.shiro</groupId>
        <artifactId>shiro-aspectj</artifactId>
        <version>${shiro.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.shiro</groupId>
        <artifactId>shiro-ehcache</artifactId>
        <version>${shiro.version}</version>
      </dependency>
      <dependency>
        <groupId>com.alibaba</groupId>
        <artifactId>druid</artifactId>
        <version>${druid.version}</version>
      </dependency>
      <dependency>
        <groupId>com.alibaba</groupId>
        <artifactId>druid-spring-boot-starter</artifactId>
        <version>${druid.version}</version>
      </dependency>
      <dependency>
        <groupId>p6spy</groupId>
        <artifactId>p6spy</artifactId>
        <version>${p6spy.version}</version>
      </dependency>
      <dependency>
        <groupId>org.mybatis</groupId>
        <artifactId>mybatis</artifactId>
        <version>${mybatis.version}</version>
      </dependency>
      <dependency>
        <groupId>org.mybatis</groupId>
        <artifactId>mybatis-spring</artifactId>
        <version>${mybatis-spring.version}</version>
      </dependency>
      <dependency>
        <groupId>com.mybatis-flex</groupId>
        <artifactId>mybatis-flex-spring-boot-starter</artifactId>
        <version>${mybatis-flex.version}</version>
      </dependency>
      <dependency>
        <groupId>com.baomidou</groupId>
        <artifactId>mybatis-plus</artifactId>
        <version>${mybatis-plus.version}</version>
      </dependency>
      <dependency>
        <groupId>com.baomidou</groupId>
        <artifactId>mybatis-plus-boot-starter</artifactId>
        <version>${mybatis-plus.version}</version>
      </dependency>
      <dependency>
        <groupId>com.baomidou</groupId>
        <artifactId>dynamic-datasource-spring-boot-starter</artifactId>
        <version>${mybatis-plus-dynamic.version}</version>
      </dependency>
      <dependency>
        <groupId>com.baomidou</groupId>
        <artifactId>mybatis-plus-generator</artifactId>
        <version>${mybatis-plus.version}</version>
      </dependency>
      <dependency>
        <groupId>com.github.yulichang</groupId>
        <artifactId>mybatis-plus-join-boot-starter</artifactId>
        <version>${mybatis-plus-join.version}</version>
      </dependency>
      <dependency>
        <groupId>com.github.pagehelper</groupId>
        <artifactId>pagehelper</artifactId>
        <version>${mybatis-page-helper.version}</version>
      </dependency>
      <dependency>
        <groupId>com.github.pagehelper</groupId>
        <artifactId>pagehelper-spring-boot-starter</artifactId>
        <version>${mybatis-page-helper-starter.version}</version>
      </dependency>

      <!--//////////////////////////////////////////////////////////////////-->

      <!-- about log -->
      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>${slf4j.version}</version>
      </dependency>
      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-simple</artifactId>
        <version>${slf4j.version}</version>
      </dependency>
      <dependency>
        <groupId>ch.qos.logback</groupId>
        <artifactId>logback-classic</artifactId>
        <version>${logback.version}</version>
        <exclusions>
          <exclusion>
            <groupId>com.sun.mail</groupId>
            <artifactId>javax.mail</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>ch.qos.logback</groupId>
        <artifactId>logback-core</artifactId>
        <version>${logback.version}</version>
      </dependency>
      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-reload4j</artifactId>
        <version>${slf4j.version}</version>
      </dependency>
      <dependency>
        <groupId>ch.qos.reload4j</groupId>
        <artifactId>reload4j</artifactId>
        <version>${reload4j.version}</version>
      </dependency>
      <!--//////////////////////////////////////////////////////////////////-->

      <!-- about maven -->
      <dependency>
        <groupId>org.apache.maven.shared</groupId>
        <artifactId>maven-invoker</artifactId>
        <version>${maven.invoker.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.maven</groupId>
        <artifactId>maven-model</artifactId>
        <version>${maven.model.version}</version>
      </dependency>
      <!--//////////////////////////////////////////////////////////////////-->

      <!-- about test -->
      <dependency>
        <groupId>org.junit.jupiter</groupId>
        <artifactId>junit-jupiter-api</artifactId>
        <version>${jupiter.version}</version>
      </dependency>
      <dependency>
        <groupId>org.hamcrest</groupId>
        <artifactId>hamcrest</artifactId>
        <version>${hamcrest.version}</version>
      </dependency>
      <dependency>
        <groupId>org.mockito</groupId>
        <artifactId>mockito-core</artifactId>
        <version>${mockito.version}</version>
      </dependency>
      <dependency>
        <groupId>org.openjdk.jmh</groupId>
        <artifactId>jmh-generator-annprocess</artifactId>
        <version>${jmh.version}</version>
      </dependency>
    </dependencies>
  </dependencyManagement>

  <repositories>
    <repository>
      <id>central</id>
      <url>https://repo1.maven.org/maven2</url>
      <releases>
        <enabled>true</enabled>
      </releases>
    </repository>
    <repository>
      <id>aliyun-public</id>
      <url>https://maven.aliyun.com/repository/public</url>
    </repository>
    <repository>
      <id>aliyun-central</id>
      <url>https://maven.aliyun.com/repository/central</url>
    </repository>
    <repository>
      <id>aliyun-spring</id>
      <url>https://maven.aliyun.com/repository/spring</url>
    </repository>
    <repository>
      <id>activiti-releases</id>
      <url>https://artifacts.alfresco.com/nexus/content/repositories/activiti-releases</url>
    </repository>
  </repositories>
  <pluginRepositories>
    <pluginRepository>
      <id>central</id>
      <url>https://repo1.maven.org/maven2</url>
      <releases>
        <enabled>true</enabled>
      </releases>
    </pluginRepository>
  </pluginRepositories>

  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-gpg-plugin</artifactId>
        <version>1.5</version>
        <executions>
          <execution>
            <id>sign-artifacts</id>
            <phase>verify</phase>
            <goals>
              <goal>sign</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.sonatype.central</groupId>
        <artifactId>central-publishing-maven-plugin</artifactId>
        <version>0.5.0</version>
        <extensions>true</extensions>
        <configuration>
          <publishingServerId>central</publishingServerId>
          <autoPublish>true</autoPublish>
        </configuration>
      </plugin>
    </plugins>
  </build>

</project>
