<?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">
    <parent>
        <artifactId>api-boot</artifactId>
        <groupId>org.minbox.framework</groupId>
        <version>2.1.2.RELEASE</version>
        <relativePath>../..</relativePath>
    </parent>
    <packaging>pom</packaging>
    <modelVersion>4.0.0</modelVersion>

    <artifactId>api-boot-dependencies</artifactId>
    <properties>
        <main.basedir>${basedir}/../..</main.basedir>
        <spring.boot.version>2.1.6.RELEASE</spring.boot.version>
        <spring.cloud.version>Greenwich.RELEASE</spring.cloud.version>
        <api.boot.version>2.1.2.RELEASE</api.boot.version>
        <druid.version>1.1.17</druid.version>
        <druid.starter.version>1.1.17</druid.starter.version>
        <fastjson.version>1.2.58</fastjson.version>
        <security.oauth2.version>2.3.5.RELEASE</security.oauth2.version>
        <spring.security.jwt.version>1.0.10.RELEASE</spring.security.jwt.version>
        <reflections.version>0.9.11</reflections.version>
        <guava.version>20.0</guava.version>
        <swagger.version>2.9.2</swagger.version>
        <alibaba.oss.version>2.8.3</alibaba.oss.version>
        <aliyun.sdk.core.version>4.2.0</aliyun.sdk.core.version>
        <aliyun.sdk.dysmsapi.version>1.1.0</aliyun.sdk.dysmsapi.version>
        <quartz.version>2.3.1</quartz.version>
        <spring.tx.version>5.1.8.RELEASE</spring.tx.version>
        <jpush-client.version>3.3.11</jpush-client.version>
        <maven-plugin-api.version>3.6.1</maven-plugin-api.version>
        <maven-plugin-annotations.version>3.6.0</maven-plugin-annotations.version>
        <maven-plugin-plugin.version>3.6.0</maven-plugin-plugin.version>
        <!--Builder Core Version-->
        <code.builder.core.version>1.0.5.RELEASE</code.builder.core.version>
        <mybatis.pageable.core.version>1.0.7.RELEASE</mybatis.pageable.core.version>
        <mybatis.enhance.core.version>1.1.1.RELEASE</mybatis.enhance.core.version>
        <mybatis.enhance.dsl.version>1.1.1.RELEASE</mybatis.enhance.dsl.version>
        <mysema.codegen.version>0.6.8</mysema.codegen.version>

        <!--Nacos Config-->
        <nacos.config.version>0.2.1</nacos.config.version>

        <!--Plugin Versions-->
        <maven-jar-plugin.version>3.1.1</maven-jar-plugin.version>
        <build-helper-maven-plugin.version>3.0.0</build-helper-maven-plugin.version>

        <aliyun-java-sdk-dm.version>3.3.1</aliyun-java-sdk-dm.version>
    </properties>
    <dependencyManagement>
        <dependencies>
            <!--SpringBoot Dependencies-->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-dependencies</artifactId>
                <version>${spring.boot.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>${spring.cloud.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

            <!--ApiBoot Starter-->
            <dependency>
                <groupId>org.minbox.framework</groupId>
                <artifactId>api-boot-starter</artifactId>
                <version>${api.boot.version}</version>
            </dependency>
            <!--ApiBoot AutoConfigure-->
            <dependency>
                <groupId>org.minbox.framework</groupId>
                <artifactId>api-boot-autoconfigure</artifactId>
                <version>${api.boot.version}</version>
            </dependency>

            <!--ApiBoot Converter-->
            <dependency>
                <groupId>org.minbox.framework</groupId>
                <artifactId>api-boot-plugin-http-converter</artifactId>
                <version>${api.boot.version}</version>
                <optional>true</optional>
            </dependency>
            <dependency>
                <groupId>org.minbox.framework</groupId>
                <artifactId>api-boot-starter-http-converter</artifactId>
                <version>${api.boot.version}</version>
            </dependency>

            <!--ApiBoot Common-->
            <dependency>
                <groupId>org.minbox.framework</groupId>
                <artifactId>api-boot-common</artifactId>
                <version>${api.boot.version}</version>
            </dependency>
            <!--fastJson-->
            <dependency>
                <groupId>com.alibaba</groupId>
                <artifactId>fastjson</artifactId>
                <version>${fastjson.version}</version>
            </dependency>
            <!--druid-->
            <dependency>
                <groupId>com.alibaba</groupId>
                <artifactId>druid</artifactId>
                <version>${druid.version}</version>
            </dependency>
            <!--druid starter-->
            <dependency>
                <groupId>com.alibaba</groupId>
                <artifactId>druid-spring-boot-starter</artifactId>
                <version>${druid.starter.version}</version>
            </dependency>

            <!--reflections-->
            <dependency>
                <groupId>org.reflections</groupId>
                <artifactId>reflections</artifactId>
                <version>${reflections.version}</version>
            </dependency>
            <!--google guava-->
            <dependency>
                <groupId>com.google.guava</groupId>
                <artifactId>guava</artifactId>
                <version>${guava.version}</version>
            </dependency>
            <!--Spring Tx-->
            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-tx</artifactId>
                <version>${spring.tx.version}</version>
            </dependency>

            <!--Maven Plugin-->
            <dependency>
                <groupId>org.apache.maven</groupId>
                <artifactId>maven-plugin-api</artifactId>
                <version>${maven-plugin-api.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.maven.plugin-tools</groupId>
                <artifactId>maven-plugin-annotations</artifactId>
                <version>${maven-plugin-annotations.version}</version>
            </dependency>


            <!--ApiBoot Swagger-->
            <dependency>
                <groupId>io.springfox</groupId>
                <artifactId>springfox-swagger-ui</artifactId>
                <version>${swagger.version}</version>
            </dependency>
            <dependency>
                <groupId>io.springfox</groupId>
                <artifactId>springfox-swagger2</artifactId>
                <version>${swagger.version}</version>
            </dependency>
            <dependency>
                <groupId>io.springfox</groupId>
                <artifactId>springfox-bean-validators</artifactId>
                <version>${swagger.version}</version>
            </dependency>
            <dependency>
                <groupId>org.minbox.framework</groupId>
                <artifactId>api-boot-starter-swagger</artifactId>
                <version>${api.boot.version}</version>
            </dependency>

            <!--ApiBoot Plugin-->
            <dependency>
                <groupId>org.minbox.framework</groupId>
                <artifactId>api-boot-plugin</artifactId>
                <version>${api.boot.version}</version>
            </dependency>

            <!--ApiBoot Security-->
            <dependency>
                <groupId>org.springframework.security.oauth</groupId>
                <artifactId>spring-security-oauth2</artifactId>
                <version>${security.oauth2.version}</version>
            </dependency>
            <dependency>
                <groupId>org.springframework.security</groupId>
                <artifactId>spring-security-jwt</artifactId>
                <version>${spring.security.jwt.version}</version>
            </dependency>
            <dependency>
                <groupId>org.minbox.framework</groupId>
                <artifactId>api-boot-plugin-security</artifactId>
                <version>${api.boot.version}</version>
            </dependency>
            <dependency>
                <groupId>org.minbox.framework</groupId>
                <artifactId>api-boot-plugin-oauth</artifactId>
                <version>${api.boot.version}</version>
            </dependency>
            <dependency>
                <groupId>org.minbox.framework</groupId>
                <artifactId>api-boot-starter-security-oauth-jwt</artifactId>
                <version>${api.boot.version}</version>
            </dependency>

            <!--ApiBoot & Aliyun Oss-->
            <dependency>
                <groupId>com.aliyun.oss</groupId>
                <artifactId>aliyun-sdk-oss</artifactId>
                <version>${alibaba.oss.version}</version>
            </dependency>
            <dependency>
                <groupId>org.minbox.framework</groupId>
                <artifactId>api-boot-plugin-alibaba-oss</artifactId>
                <version>${api.boot.version}</version>
            </dependency>
            <dependency>
                <groupId>org.minbox.framework</groupId>
                <artifactId>api-boot-starter-alibaba-oss</artifactId>
                <version>${api.boot.version}</version>
            </dependency>

            <!--ApiBoot & Aliyun Sms-->
            <dependency>
                <groupId>com.aliyun</groupId>
                <artifactId>aliyun-java-sdk-core</artifactId>
                <version>${aliyun.sdk.core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.aliyun</groupId>
                <artifactId>aliyun-java-sdk-dysmsapi</artifactId>
                <version>${aliyun.sdk.dysmsapi.version}</version>
            </dependency>
            <dependency>
                <groupId>org.minbox.framework</groupId>
                <artifactId>api-boot-plugin-alibaba-sms</artifactId>
                <version>${api.boot.version}</version>
            </dependency>
            <dependency>
                <groupId>org.minbox.framework</groupId>
                <artifactId>api-boot-starter-alibaba-sms</artifactId>
                <version>${api.boot.version}</version>
            </dependency>

            <!--ApiBoot & Quartz-->
            <dependency>
                <groupId>org.quartz-scheduler</groupId>
                <artifactId>quartz</artifactId>
                <version>${quartz.version}</version>
            </dependency>
            <dependency>
                <groupId>org.minbox.framework</groupId>
                <artifactId>api-boot-plugin-quartz</artifactId>
                <version>${api.boot.version}</version>
            </dependency>
            <dependency>
                <groupId>org.minbox.framework</groupId>
                <artifactId>api-boot-starter-quartz</artifactId>
                <version>${api.boot.version}</version>
            </dependency>

            <!--ApiBoot DataSource Switch-->
            <dependency>
                <groupId>org.minbox.framework</groupId>
                <artifactId>api-boot-plugin-datasource-switch</artifactId>
                <version>${api.boot.version}</version>
            </dependency>
            <dependency>
                <groupId>org.minbox.framework</groupId>
                <artifactId>api-boot-starter-datasource-switch</artifactId>
                <version>${api.boot.version}</version>
            </dependency>

            <!--ApiBoot Resource Load-->
            <dependency>
                <groupId>org.minbox.framework</groupId>
                <artifactId>api-boot-plugin-resource-load</artifactId>
                <version>${api.boot.version}</version>
            </dependency>
            <dependency>
                <groupId>org.minbox.framework</groupId>
                <artifactId>api-boot-starter-resource-load</artifactId>
                <version>${api.boot.version}</version>
            </dependency>

            <!--ApiBoot Message Push-->
            <dependency>
                <groupId>cn.jpush.api</groupId>
                <artifactId>jpush-client</artifactId>
                <version>${jpush-client.version}</version>
            </dependency>
            <dependency>
                <groupId>org.minbox.framework</groupId>
                <artifactId>api-boot-plugin-message-push</artifactId>
                <version>${api.boot.version}</version>
            </dependency>
            <dependency>
                <groupId>org.minbox.framework</groupId>
                <artifactId>api-boot-starter-message-push</artifactId>
                <version>${api.boot.version}</version>
            </dependency>

            <!--ApiBoot Code Builder-->
            <dependency>
                <groupId>com.gitee.hengboy</groupId>
                <artifactId>code-builder-core</artifactId>
                <version>${code.builder.core.version}</version>
            </dependency>

            <!--ApiBoot Mybatis Pageable-->
            <dependency>
                <groupId>com.gitee.hengboy</groupId>
                <artifactId>mybatis-pageable-core</artifactId>
                <version>${mybatis.pageable.core.version}</version>
            </dependency>
            <dependency>
                <groupId>org.minbox.framework</groupId>
                <artifactId>api-boot-starter-mybatis-pageable</artifactId>
                <version>${api.boot.version}</version>
            </dependency>

            <!--ApiBoot Mybatis Enhance-->
            <dependency>
                <groupId>com.gitee.hengboy</groupId>
                <artifactId>mybatis-enhance-core</artifactId>
                <version>${mybatis.enhance.core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.gitee.hengboy</groupId>
                <artifactId>mybatis-enhance-dsl</artifactId>
                <version>${mybatis.enhance.dsl.version}</version>
            </dependency>
            <dependency>
                <groupId>org.minbox.framework</groupId>
                <artifactId>api-boot-starter-mybatis-enhance</artifactId>
                <version>${api.boot.version}</version>
            </dependency>

            <!--ApiBoot RateLimiter-->
            <dependency>
                <groupId>org.minbox.framework</groupId>
                <artifactId>api-boot-plugin-rate-limiter</artifactId>
                <version>${api.boot.version}</version>
            </dependency>
            <dependency>
                <groupId>org.minbox.framework</groupId>
                <artifactId>api-boot-starter-rate-limiter</artifactId>
                <version>${api.boot.version}</version>
            </dependency>

            <!--Codegen-->
            <dependency>
                <groupId>com.mysema.codegen</groupId>
                <artifactId>codegen</artifactId>
                <version>${mysema.codegen.version}</version>
            </dependency>

            <!--Nacos Config-->
            <dependency>
                <groupId>com.alibaba.boot</groupId>
                <artifactId>nacos-config-spring-boot-starter</artifactId>
                <version>${nacos.config.version}</version>
            </dependency>

            <!--ApiBoot Mail-->
            <dependency>
                <groupId>org.minbox.framework</groupId>
                <artifactId>api-boot-plugin-mail</artifactId>
                <version>${api.boot.version}</version>
            </dependency>
            <dependency>
                <groupId>org.minbox.framework</groupId>
                <artifactId>api-boot-starter-mail</artifactId>
                <version>${api.boot.version}</version>
            </dependency>
            <dependency>
                <groupId>com.aliyun</groupId>
                <artifactId>aliyun-java-sdk-dm</artifactId>
                <version>${aliyun-java-sdk-dm.version}</version>
            </dependency>

            <!--ApiBoot Logging-->
            <dependency>
                <groupId>org.minbox.framework</groupId>
                <artifactId>api-boot-plugin-logging</artifactId>
                <version>${api.boot.version}</version>
            </dependency>
            <dependency>
                <groupId>org.minbox.framework</groupId>
                <artifactId>api-boot-starter-logging</artifactId>
                <version>${api.boot.version}</version>
            </dependency>
            <!--ApiBoot Logging Admin-->
            <dependency>
                <groupId>org.minbox.framework</groupId>
                <artifactId>api-boot-plugin-logging-admin</artifactId>
                <version>${api.boot.version}</version>
            </dependency>
            <dependency>
                <groupId>org.minbox.framework</groupId>
                <artifactId>api-boot-starter-logging-admin</artifactId>
                <version>${api.boot.version}</version>
            </dependency>

        </dependencies>
    </dependencyManagement>

    <build>
        <!--plugin management-->
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-jar-plugin</artifactId>
                    <version>${maven-jar-plugin.version}</version>
                </plugin>
                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>build-helper-maven-plugin</artifactId>
                    <version>${build-helper-maven-plugin.version}</version>
                </plugin>
                <!--ApiBoot Code Builder-->
                <plugin>
                    <groupId>org.minbox.framework</groupId>
                    <artifactId>api-boot-maven-plugin-code-builder</artifactId>
                    <version>${api.boot.version}</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-plugin-plugin</artifactId>
                    <version>${maven-plugin-plugin.version}</version>
                </plugin>
                <!--ApiBoot Mybatis Enhance Codegen-->
                <plugin>
                    <groupId>org.minbox.framework</groupId>
                    <artifactId>api-boot-mybatis-enhance-maven-codegen</artifactId>
                    <version>${api.boot.version}</version>
                </plugin>
            </plugins>
        </pluginManagement>
    </build>
</project>
