<?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>
        <groupId>cn.sikey.cloud</groupId>
        <artifactId>sikey-business</artifactId>
        <version>2.3.0-SNAPSHOT</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>

    <artifactId>sikey-tools-business</artifactId>
    <packaging>pom</packaging>

    <name>${project.artifactId}</name>

    <description>
        工具模块
    </description>
    <modules>
        <module>sikey-tools-business-api</module>
        <module>sikey-tools-business-biz</module>
    </modules>

    <properties>
        <java.version>23</java.version>
        <maven.compiler.source>${java.version}</maven.compiler.source>
        <maven.compiler.target>${java.version}</maven.compiler.target>
        <consul.version>4.2.0</consul.version>
        <!--<spring.cloud.alibaba.version>2023.0.1.0</spring.cloud.alibaba.version>-->
        <lombok.version>1.18.36</lombok.version>
        <logback.version>1.2.12</logback.version>
        <mapstruct.version>1.6.2</mapstruct.version>
        <spring.cloud.version>2024.0.0</spring.cloud.version>
        <spring.boot.version>3.4.0</spring.boot.version>
        <skywalking.version>9.0.0</skywalking.version>
        <opentracing.version>0.33.0</opentracing.version>
        <revision>2.3.0-SNAPSHOT</revision>

        <maven-surefire-plugin.version>3.2.2</maven-surefire-plugin.version>
        <maven-compiler-plugin.version>3.13.0</maven-compiler-plugin.version>
        <flatten-maven-plugin.version>1.6.0</flatten-maven-plugin.version>
        <okhttp3.version>4.12.0</okhttp3.version>
        <hutool.version>5.8.28</hutool.version>
        <google.zxing.version>3.5.2</google.zxing.version>
        <gson.version>2.11.0</gson.version>
        <security.version>3.4.4</security.version>
        <commons-codec.version>1.15</commons-codec.version>
    </properties>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>${spring.cloud.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-dependencies</artifactId>
                <version>${spring.boot.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

            <!-- Web 开发基础依赖 -->
            <dependency>
                <groupId>cn.sikey.cloud</groupId>
                <artifactId>sikey-spring-boot-starter-web</artifactId>
                <version>${revision}</version>
            </dependency>

            <!-- Registry 注册中心相关 -->
            <!--<dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
            </dependency>-->

            <!-- Config 配置中心相关 -->
            <!--<dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
            </dependency>-->

            <!-- Spring Cloud Consul 配置中心 -->
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-starter-consul-config</artifactId>
                <version>${consul.version}</version>
            </dependency>

            <!-- Spring Cloud Consul 服务发现 -->
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-starter-consul-discovery</artifactId>
                <version>${consul.version}</version>
            </dependency>

            <dependency>
                <groupId>org.projectlombok</groupId>
                <artifactId>lombok</artifactId>
                <version>${lombok.version}</version>
            </dependency>

            <dependency>
                <groupId>org.mapstruct</groupId>
                <artifactId>mapstruct</artifactId>
                <version>${mapstruct.version}</version>
            </dependency>
            <dependency>
                <groupId>org.mapstruct</groupId>
                <artifactId>mapstruct-jdk8</artifactId>
                <version>${mapstruct.version}</version>
            </dependency>
            <dependency>
                <groupId>org.mapstruct</groupId>
                <artifactId>mapstruct-processor</artifactId>
                <version>${mapstruct.version}</version>
            </dependency>

            <dependency>
                <groupId>org.apache.skywalking</groupId>
                <artifactId>apm-toolkit-trace</artifactId>
                <version>${skywalking.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.skywalking</groupId>
                <artifactId>apm-toolkit-logback-1.x</artifactId>
                <version>${skywalking.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.skywalking</groupId>
                <artifactId>apm-toolkit-opentracing</artifactId>
                <version>${skywalking.version}</version>
            </dependency>

            <dependency>
                <groupId>io.opentracing</groupId>
                <artifactId>opentracing-api</artifactId>
                <version>${opentracing.version}</version>
            </dependency>
            <dependency>
                <groupId>io.opentracing</groupId>
                <artifactId>opentracing-util</artifactId>
                <version>${opentracing.version}</version>
            </dependency>
            <dependency>
                <groupId>io.opentracing</groupId>
                <artifactId>opentracing-noop</artifactId>
                <version>${opentracing.version}</version>
            </dependency>

            <dependency>
                <groupId>com.squareup.okhttp3</groupId>
                <artifactId>okhttp</artifactId>
                <version>${okhttp3.version}</version>
            </dependency>

            <!-- Hutool 核心库 -->
            <dependency>
                <groupId>cn.hutool</groupId>
                <artifactId>hutool-all</artifactId>
                <version>${hutool.version}</version>
            </dependency>

            <dependency>
                <groupId>cn.hutool</groupId>
                <artifactId>hutool-core</artifactId>
                <version>${hutool.version}</version>
            </dependency>

            <!-- 显式添加 Gson -->
            <dependency>
                <groupId>com.google.code.gson</groupId>
                <artifactId>gson</artifactId>
                <version>${gson.version}</version>
            </dependency>

            <!-- DB 相关 -->
            <dependency>
                <groupId>cn.sikey.cloud</groupId>
                <artifactId>sikey-spring-boot-starter-mybatis</artifactId>
                <version>${revision}</version>
            </dependency>

            <!-- Redis 相关 -->
            <dependency>
                <groupId>cn.sikey.cloud</groupId>
                <artifactId>sikey-spring-boot-starter-redis</artifactId>
                <version>${revision}</version>
            </dependency>

            <!-- 参数校验 -->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-validation</artifactId>
                <version>${spring.boot.version}</version>
            </dependency>

            <dependency>
                <groupId>commons-codec</groupId>
                <artifactId>commons-codec</artifactId>
                <version>${commons-codec.version}</version>
            </dependency>
        </dependencies>
    </dependencyManagement>

</project>
