<?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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.7.15</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.cpop</groupId>
    <artifactId>Cpop-Union</artifactId>
    <version>1.0.0</version>
    <name>Cpop-Union</name>
    <description>深圳普普数字产业有限公司内部开发框架</description>
    <packaging>pom</packaging>

    <modules>
        <module>Cpop-Common</module>
        <module>Cpop-Core</module>
        <module>Cpop-Generator</module>
        <module>Cpop-Api</module>
        <module>Cpop-Oam</module>
        <module>Cpop-Oam/Cpop-Oam-Web</module>
        <module>Cpop-Jambox</module>
        <module>Cpop-Jambox/Cpop-Jambox-Web</module>
        <module>Cpop-Mall</module>
        <module>Cpop-Mall/Cpop-Mall-Web</module>
        <module>Cpop-System</module>
        <module>Cpop-Mini</module>
        <module>Cpop-Pay</module>
        <module>Cpop-ClockIn-Demo</module>
    </modules>

    <properties>
        <java.version>1.8</java.version>
        <cpop.version>1.0.0</cpop.version>
        <snakeyaml.version>2.0</snakeyaml.version>
        <common-text.version>1.10.0</common-text.version>
        <commons-IO.version>2.13.0</commons-IO.version>
        <joda.time.version>2.12.5</joda.time.version>
        <fastjson.version>2.0.38</fastjson.version>
        <mybatis-flex.version>1.7.5</mybatis-flex.version>
        <easyexcel.version>3.3.2</easyexcel.version>
        <commons-compress.version>1.21</commons-compress.version>
        <jjwt.version>0.9.1</jjwt.version>
        <HikariCP.version>4.0.3</HikariCP.version>
        <knife4j.version>4.2.0</knife4j.version>
        <wechat-java.version>4.6.0</wechat-java.version>
        <bcprov-jdk15on.version>1.70</bcprov-jdk15on.version>
        <cos_api.version>5.6.155</cos_api.version>
        <spring-test.version>5.3.31</spring-test.version>
        <hutool.version>5.8.23</hutool.version>
    </properties>

    <dependencyManagement>
        <dependencies>
            <!--常用工具类 -->
            <dependency>
                <groupId>org.apache.commons</groupId>
                <artifactId>commons-text</artifactId>
                <version>${common-text.version}</version>
            </dependency>
            <!--https://mvnrepository.com/artifact/commons-io/commons-io-->
            <dependency>
                <groupId>commons-io</groupId>
                <artifactId>commons-io</artifactId>
                <version>${commons-IO.version}</version>
            </dependency>
            <!-- 时间工具类 -->
            <dependency>
                <groupId>joda-time</groupId>
                <artifactId>joda-time</artifactId>
                <version>${joda.time.version}</version>
            </dependency>
            <!-- 阿里JSON解析器 -->
            <dependency>
                <groupId>com.alibaba</groupId>
                <artifactId>fastjson</artifactId>
                <version>${fastjson.version}</version>
            </dependency>
            <!-- jwt 相关依赖-->
            <dependency>
                <groupId>io.jsonwebtoken</groupId>
                <artifactId>jjwt</artifactId>
                <version>${jjwt.version}</version>
            </dependency>
            <!--Cpop公共包-->
            <dependency>
                <groupId>com.cpop</groupId>
                <artifactId>Cpop-Common</artifactId>
                <version>${cpop.version}</version>
            </dependency>
            <!--Cpop公共包-->
            <dependency>
                <groupId>com.cpop</groupId>
                <artifactId>Cpop-Core</artifactId>
                <version>${cpop.version}</version>
            </dependency>
            <dependency>
                <groupId>com.cpop</groupId>
                <artifactId>Cpop-Api</artifactId>
                <version>${cpop.version}</version>
            </dependency>
            <dependency>
                <groupId>com.cpop</groupId>
                <artifactId>Cpop-Oam</artifactId>
                <version>${cpop.version}</version>
            </dependency>
            <dependency>
                <groupId>com.cpop</groupId>
                <artifactId>Cpop-Jambox</artifactId>
                <version>${cpop.version}</version>
            </dependency>
            <!-- 打卡Demo包  -->
            <dependency>
                <groupId>com.cpop</groupId>
                <artifactId>Cpop-ClockIn-Demo</artifactId>
                <version>${cpop.version}</version>
            </dependency>
            <dependency>
                <groupId>com.cpop</groupId>
                <artifactId>Cpop-Mall</artifactId>
                <version>${cpop.version}</version>
            </dependency>
            <dependency>
                <groupId>com.cpop</groupId>
                <artifactId>Cpop-System</artifactId>
                <version>${cpop.version}</version>
            </dependency>
            <dependency>
                <groupId>com.cpop</groupId>
                <artifactId>Cpop-Mini</artifactId>
                <version>${cpop.version}</version>
            </dependency>
            <dependency>
                <groupId>com.cpop</groupId>
                <artifactId>Cpop-Pay</artifactId>
                <version>${cpop.version}</version>
            </dependency>
            <!--HikariCP-->
            <dependency>
                <groupId>com.zaxxer</groupId>
                <artifactId>HikariCP</artifactId>
                <version>${HikariCP.version}</version>
            </dependency>
            <!--Mybatis-flex-->
            <dependency>
                <groupId>com.mybatis-flex</groupId>
                <artifactId>mybatis-flex-spring-boot-starter</artifactId>
                <version>${mybatis-flex.version}</version>
            </dependency>
            <dependency>
                <groupId>com.mybatis-flex</groupId>
                <artifactId>mybatis-flex-processor</artifactId>
                <version>${mybatis-flex.version}</version>
            </dependency>
            <!--代码生成器-->
            <dependency>
                <groupId>com.mybatis-flex</groupId>
                <artifactId>mybatis-flex-codegen</artifactId>
                <version>${mybatis-flex.version}</version>
            </dependency>
            <!--easyExcel-->
            <dependency>
                <groupId>com.alibaba</groupId>
                <artifactId>easyexcel</artifactId>
                <version>${easyexcel.version}</version>
            </dependency>
            <!-- https://mvnrepository.com/artifact/org.apache.commons/commons-compress -->
            <dependency>
                <groupId>org.apache.commons</groupId>
                <artifactId>commons-compress</artifactId>
                <version>${commons-compress.version}</version>
            </dependency>
            <!--knife4j-Swagger-->
            <dependency>
                <groupId>com.github.xiaoymin</groupId>
                <artifactId>knife4j-openapi2-spring-boot-starter</artifactId>
                <version>${knife4j.version}</version>
            </dependency>
            <!--微信开放平台-->
            <dependency>
                <groupId>com.github.binarywang</groupId>
                <artifactId>weixin-java-open</artifactId>
                <version>${wechat-java.version}</version>
            </dependency>
            <!--微信小程序-->
            <dependency>
                <groupId>com.github.binarywang</groupId>
                <artifactId>weixin-java-miniapp</artifactId>
                <version>${wechat-java.version}</version>
            </dependency>
            <!--企业微信-->
            <dependency>
                <groupId>com.github.binarywang</groupId>
                <artifactId>weixin-java-cp</artifactId>
                <version>${wechat-java.version}</version>
            </dependency>
            <!--微信支付-->
            <dependency>
                <groupId>com.github.binarywang</groupId>
                <artifactId>weixin-java-pay</artifactId>
                <version>${wechat-java.version}</version>
            </dependency>
            <!-- 腾讯云-->
            <dependency>
                <groupId>com.qcloud</groupId>
                <artifactId>cos_api</artifactId>
                <version>${cos_api.version}</version>
            </dependency>
            <!-- https://mvnrepository.com/artifact/org.bouncycastle/bcprov-jdk15on -->
            <dependency>
                <groupId>org.bouncycastle</groupId>
                <artifactId>bcprov-jdk15on</artifactId>
                <version>${bcprov-jdk15on.version}</version>
            </dependency>
            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-test</artifactId>
                <version>${spring-test.version}</version>
            </dependency>
            <!-- https://mvnrepository.com/artifact/cn.hutool/hutool-all -->
            <dependency>
                <groupId>cn.hutool</groupId>
                <artifactId>hutool-all</artifactId>
                <version>${hutool.version}</version>
            </dependency>

        </dependencies>
    </dependencyManagement>

    <!--公共依赖-->
    <dependencies>
        <!--Web-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <!--Test-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        <!--snakeyaml-->
        <dependency>
            <groupId>org.yaml</groupId>
            <artifactId>snakeyaml</artifactId>
            <version>${snakeyaml.version}</version>
        </dependency>
        <!--Lombok-->
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <excludes>
                        <exclude>
                            <groupId>org.projectlombok</groupId>
                            <artifactId>lombok</artifactId>
                        </exclude>
                    </excludes>
                </configuration>
                <executions>
                    <execution>
                        <goals>
                            <!--be careful 在parent pom 里面一定要加这个属性-->
                            <goal>repackage</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>
</project>
