<?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>
    <packaging>jar</packaging>
    <parent>
        <groupId>com.thebeastshop</groupId>
        <artifactId>base</artifactId>
        <version>2.2.0</version>
    </parent>
    <artifactId>beast-api</artifactId>
    <version>3.0-SNAPSHOT</version>

    <properties>
        <!-- spring boot -->
        <spring-boot.version>2.6.8</spring-boot.version>
        <spring.version>5.3.20</spring.version>
        <spring-starter-web.version>2.7.3</spring-starter-web.version>
        <spring-starter-logging.version>2.7.3</spring-starter-logging.version>
        <!-- beast modules -->
        <beast-member-api.version>3.5.7</beast-member-api.version>
        <merchandise-api.version>4.0.18</merchandise-api.version>
        <beast-campaign-api.version>1.7.0</beast-campaign-api.version>
        <beast-trans-api.version>2.6.3-SNAPSHOT</beast-trans-api.version>
        <beast-sales-order-api.version>2.6.8</beast-sales-order-api.version>
        <beast-cooperation-api.version>1.0.13</beast-cooperation-api.version>
        <beast-configuration-api.version>1.6.7-SNAPSHOT</beast-configuration-api.version>
        <beast-cart-api.version>2.4.5</beast-cart-api.version>
        <beast-coupon-api.version>1.3.21</beast-coupon-api.version>
        <beast-card-api.version>1.0.9</beast-card-api.version>
        <beast-commdata-api.version>3.3.15</beast-commdata-api.version>
        <beast-forcast-api.version>1.0.4</beast-forcast-api.version>
        <beast-message-api.version>2.3.2</beast-message-api.version>
        <beast-payment-api.version>1.3.12</beast-payment-api.version>
        <beast-exchange-api.version>2.1.7</beast-exchange-api.version>
        <beast-delivery-api.version>1.2.7</beast-delivery-api.version>
        <beast-privilege-api.version>3.0.18</beast-privilege-api.version>
        <beast-pack-split-api.version>1.0.0</beast-pack-split-api.version>
        <beast-bagua-api.version>1.0.1</beast-bagua-api.version>
        <beast-share-orde-apir.version>2.0.6</beast-share-orde-apir.version>
        <beast-media.version>2.0.14</beast-media.version>
        <beast-stock-api.version>1.7.18</beast-stock-api.version>
        <beast-wms-api.version>2.9.0</beast-wms-api.version>
        <beast-pcs-api.version>2.3.7</beast-pcs-api.version>
        <beast-blacklist-api.version>1.0.0</beast-blacklist-api.version>
        <beast-account.version>2.0.5</beast-account.version>
        <beast-course-api.version>2.4.5</beast-course-api.version>
        <beast-invoice-api.version>2.1.5</beast-invoice-api.version>
        <beast-promotion-adapter-api.version>1.0.14</beast-promotion-adapter-api.version>
        <beast-achievement-api.version>1.0.3</beast-achievement-api.version>
        <beast-envelope-api.version>1.0.0</beast-envelope-api.version>
        <beast-devuser-api.version>1.8.7</beast-devuser-api.version>
        <beast-sensors-sdk.version>1.0.23</beast-sensors-sdk.version>
        <beast-clog-agent.version>2.0.0</beast-clog-agent.version>
        <beast-op-api.version>5.8.45</beast-op-api.version>
        <!-- beast-kit -->
        <beast-kit-prop.version>1.4.1</beast-kit-prop.version>
        <beast-kit-generic.version>1.4.2</beast-kit-generic.version>
        <beast-kit-redis.verion>1.6.4</beast-kit-redis.verion>
        <beast-kit-alitool.version>1.4.2</beast-kit-alitool.version>
        <beast-kit-kafka.version>1.5.2</beast-kit-kafka.version>
        <beast-kit-actuator.version>1.4.1</beast-kit-actuator.version>
        <beast-kit-enums.version>1.4.9</beast-kit-enums.version>
        <beast-kit-id.version>1.5.0</beast-kit-id.version>
        <!-- cat -->
        <cat-client.version>1.5.6</cat-client.version>
        <cat-monitor.version>0.0.6</cat-monitor.version>
        <netty-common.version>4.1.81.Final</netty-common.version>
        <!-- jackson -->
        <jackson.version>2.13.4</jackson.version>
        <jackson-databind>2.9.5</jackson-databind>
        <!-- http -->
        <httpclient.version>4.5.13</httpclient.version>
        <httpcore.version>4.4.4</httpcore.version>
        <!-- log -->
        <org.slf4j.version>1.7.25</org.slf4j.version>
        <disruptor.version>3.2.0</disruptor.version>
        <log4j2.version>2.19.0</log4j2.version>
        <!-- kafka -->
        <kafka-client.version>2.8.6</kafka-client.version>
        <!-- hotlink -->
        <curator.version>4.0.1</curator.version>
        <!-- servlet -->
        <javax.servlet-api.version>4.0.1</javax.servlet-api.version>
        <!-- docs -->
        <swagger.version>3.0.3</swagger.version>
        <!-- tools -->
        <google.zxing>3.5.0</google.zxing>
        <guava.version>29.0-jre</guava.version>
        <version.liteBanner>1.0.1</version.liteBanner>
        <commons-lang3.version>3.4</commons-lang3.version>
        <commons-collections.version>3.2</commons-collections.version>
        <commons-fileupload.version>1.4</commons-fileupload.version>
        <hutool.version>5.8.38</hutool.version>
        <mica.version>2.6.8</mica.version>
        <!-- sso -->
        <version.cas-server-support-ssoapi>1.2.5</version.cas-server-support-ssoapi>
        <version.tianai-captcha>1.5.1</version.tianai-captcha>
    </properties>

    <dependencies>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>dx-adapt</artifactId>
            <version>1.1.0</version>
        </dependency>
        <!-- spring-boot-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
            <version>${spring-starter-web.version}</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-logging</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-jdbc</artifactId>
        </dependency>
        <!--<dependency>
            <groupId>io.netty</groupId>
            <artifactId>netty-common</artifactId>
            <version>${netty-common.version}</version>
        </dependency>-->
        <!-- beast-kit -->
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-kit-prop</artifactId>
            <version>${beast-kit-prop.version}</version>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-kit-generic</artifactId>
            <version>${beast-kit-generic.version}</version>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-kit-redis</artifactId>
            <version>${beast-kit-redis.verion}</version>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-kit-alitool</artifactId>
            <version>${beast-kit-alitool.version}</version>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-kit-kafka</artifactId>
            <version>${beast-kit-kafka.version}</version>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-kit-enums</artifactId>
            <version>${beast-kit-enums.version}</version>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-kit-id</artifactId>
            <version>${beast-kit-id.version}</version>
        </dependency>
        <!-- beast service api -->
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-campaign-api</artifactId>
            <version>${beast-campaign-api.version}</version>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-delivery-api</artifactId>
            <version>${beast-delivery-api.version}</version>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-cart-api</artifactId>
            <version>${beast-cart-api.version}</version>
            <exclusions>
                <exclusion>
                    <artifactId>pegasus-merchandise-api</artifactId>
                    <groupId>com.thebeastshop.pegasus</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-stock-api</artifactId>
            <version>${beast-stock-api.version}</version>
            <exclusions>
                <exclusion>
                    <artifactId>lit-transaction-dubbo</artifactId>
                    <groupId>com.thebeastshop</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-wms-api</artifactId>
            <version>${beast-wms-api.version}</version>
            <exclusions>
                <exclusion>
                    <artifactId>pegasus-merchandise-api</artifactId>
                    <groupId>com.thebeastshop.pegasus</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop.pegasus</groupId>
            <artifactId>pegasus-merchandise-api</artifactId>
            <version>${merchandise-api.version}</version>
            <exclusions>
                <exclusion>
                    <artifactId>javassist</artifactId>
                    <groupId>org.javassist</groupId>
                </exclusion>
                <exclusion>
                    <groupId>org.springframework</groupId>
                    <artifactId>*</artifactId>
                </exclusion>
                <exclusion>
                    <artifactId>beast-wms-api</artifactId>
                    <groupId>com.thebeastshop</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>jackson-dataformat-xml</artifactId>
                    <groupId>com.fasterxml.jackson.dataformat</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-sales-order-api</artifactId>
            <version>${beast-sales-order-api.version}</version>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-message-api</artifactId>
            <version>${beast-message-api.version}</version>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-trans-api</artifactId>
            <version>${beast-trans-api.version}</version>
            <exclusions>
                <exclusion>
                    <artifactId>dubbo</artifactId>
                    <groupId>com.alibaba</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-member-api</artifactId>
            <version>${beast-member-api.version}</version>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-payment-api</artifactId>
            <version>${beast-payment-api.version}</version>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-cooperation-api</artifactId>
            <version>${beast-cooperation-api.version}</version>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-forcast-api</artifactId>
            <version>${beast-forcast-api.version}</version>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-coupon-api</artifactId>
            <version>${beast-coupon-api.version}</version>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-commdata-api</artifactId>
            <version>${beast-commdata-api.version}</version>
            <exclusions>
                <exclusion>
                    <groupId>*</groupId>
                    <artifactId>*</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-card-api</artifactId>
            <version>${beast-card-api.version}</version>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-exchange-api</artifactId>
            <version>${beast-exchange-api.version}</version>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-configuration-api</artifactId>
            <version>${beast-configuration-api.version}</version>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-privilege-api</artifactId>
            <version>${beast-privilege-api.version}</version>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-pack-split-api</artifactId>
            <version>${beast-pack-split-api.version}</version>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-bagua-api</artifactId>
            <version>${beast-bagua-api.version}</version>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-share-order-api</artifactId>
            <version>${beast-share-orde-apir.version}</version>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-media-api</artifactId>
            <version>${beast-media.version}</version>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-blacklist-api</artifactId>
            <version>${beast-blacklist-api.version}</version>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-account-api</artifactId>
            <version>${beast-account.version}</version>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-course-api</artifactId>
            <version>${beast-course-api.version}</version>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-invoice-api</artifactId>
            <version>${beast-invoice-api.version}</version>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-promotion-adapter-api</artifactId>
            <version>${beast-promotion-adapter-api.version}</version>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-achievement-api</artifactId>
            <version>${beast-achievement-api.version}</version>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-devuser-api</artifactId>
            <version>${beast-devuser-api.version}</version>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-red-envelope-api</artifactId>
            <version>${beast-envelope-api.version}</version>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-pcs-api</artifactId>
            <version>${beast-pcs-api.version}</version>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-op-api</artifactId>
            <version>${beast-op-api.version}</version>
        </dependency>
        <!-- jackson -->
        <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-databind</artifactId>
            <version>${jackson.version}</version>
        </dependency>
        <dependency>
            <groupId>com.github.villadora</groupId>
            <artifactId>semver</artifactId>
            <version>0.0.2</version>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop.liteBanner</groupId>
            <artifactId>liteBanner</artifactId>
            <version>${version.liteBanner}</version>
        </dependency>
        <!-- cat -->
        <dependency>
            <groupId>com.dianping.cat</groupId>
            <artifactId>cat-client</artifactId>
            <version>${cat-client.version}</version>
            <exclusions>
                <exclusion>
                    <groupId>io.netty</groupId>
                    <artifactId>netty-all</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.apache.httpcomponents</groupId>
            <artifactId>httpclient</artifactId>
            <version>${httpclient.version}</version>
        </dependency>
        <dependency>
            <groupId>com.google.zxing</groupId>
            <artifactId>core</artifactId>
            <version>${google.zxing}</version>
        </dependency>

        <!-- 一个监控用的包，龚老板让加的 -->
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-kit-actuator</artifactId>
            <version>${beast-kit-actuator.version}</version>
        </dependency>

        <!-- 后端埋点 -->
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>beast-sensors-sdk</artifactId>
            <version>${beast-sensors-sdk.version}</version>
            <exclusions>
                <exclusion>
                    <artifactId>hutool-core</artifactId>
                    <groupId>cn.hutool</groupId>
                </exclusion>
            </exclusions>
        </dependency>

        <!-- 中央日志客户端 -->
        <dependency>
            <groupId>com.beast</groupId>
            <artifactId>beast-clog-agent</artifactId>
            <version>${beast-clog-agent.version}</version>
            <exclusions>
                <exclusion>
                    <artifactId>kafka-clients</artifactId>
                    <groupId>org.apache.kafka</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>beast-kit-prop</artifactId>
                    <groupId>com.thebeastshop</groupId>
                </exclusion>
            </exclusions>
        </dependency>

        <!-- utils -->
        <dependency>
            <groupId>com.google.guava</groupId>
            <artifactId>guava</artifactId>
            <version>${guava.version}</version>
        </dependency>
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>jcl-over-slf4j</artifactId>
            <version>${org.slf4j.version}</version>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>com.googlecode.libphonenumber</groupId>
            <artifactId>libphonenumber</artifactId>
            <version>8.10.15</version>
        </dependency>

        <!--需要使用log4j2的AsyncLogger需要包含disruptor-->
        <dependency>
            <groupId>com.lmax</groupId>
            <artifactId>disruptor</artifactId>
            <version>${disruptor.version}</version>
        </dependency>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>${javax.servlet-api.version}</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>commons-fileupload</groupId>
            <artifactId>commons-fileupload</artifactId>
            <version>${commons-fileupload.version}</version>
        </dependency>
        <dependency>
            <groupId>com.yomahub</groupId>
            <artifactId>tlog-all-spring-boot-starter</artifactId>
            <version>1.5.0</version>
            <exclusions>
                <exclusion>
                    <artifactId>hutool-core</artifactId>
                    <groupId>cn.hutool</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        <!-- hutool -->
        <dependency>
            <groupId>cn.hutool</groupId>
            <artifactId>hutool-all</artifactId>
            <version>${hutool.version}</version>
        </dependency>
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-core</artifactId>
            <version>${log4j2.version}</version>
        </dependency>
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-api</artifactId>
            <version>${log4j2.version}</version>
        </dependency>
        <dependency>
            <groupId>net.dreamlu</groupId>
            <artifactId>mica-xss</artifactId>
            <version>${mica.version}</version>
        </dependency>

        <!-- 热点数据缓存 -->
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>hotlink-spring-boot-starter</artifactId>
            <version>1.0.14</version>
            <exclusions>
                <exclusion>
                    <artifactId>hutool-core</artifactId>
                    <groupId>cn.hutool</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>com.thebeastshop</groupId>
            <artifactId>hotlink-common</artifactId>
            <version>1.0.14</version>
            <exclusions>
                <exclusion>
                    <artifactId>hutool-crypto</artifactId>
                    <groupId>cn.hutool</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>hutool-core</artifactId>
                    <groupId>cn.hutool</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.apache.curator</groupId>
            <artifactId>curator-framework</artifactId>
            <version>${curator.version}</version>
        </dependency>
        <dependency>
            <groupId>org.apache.curator</groupId>
            <artifactId>curator-recipes</artifactId>
            <version>${curator.version}</version>
        </dependency>
        <!-- swagger -->
        <dependency>
            <groupId>com.github.xiaoymin</groupId>
            <artifactId>knife4j-spring-boot-starter</artifactId>
            <version>${swagger.version}</version>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
        </dependency>
        <dependency>
            <groupId>org.jasig.cas</groupId>
            <artifactId>cas-server-support-ssoapi</artifactId>
            <version>${version.cas-server-support-ssoapi}</version>
            <exclusions>
                <exclusion>
                    <artifactId>slf4j-log4j12</artifactId>
                    <groupId>org.slf4j</groupId>
                </exclusion>
                <exclusion>
                    <groupId>com.thebeastshop</groupId>
                    <artifactId>beast-common</artifactId>
                </exclusion>
                <exclusion>
                    <artifactId>validation-api</artifactId>
                    <groupId>javax.validation</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        <!--dubbo & zk-->
        <dependency>
            <groupId>org.apache.dubbo</groupId>
            <artifactId>dubbo-spring-boot-starter</artifactId>
        </dependency>
        <dependency>
            <groupId>com.github.sgroschupf</groupId>
            <artifactId>zkclient</artifactId>
        </dependency>
        <dependency>
            <groupId>cloud.tianai.captcha</groupId>
            <artifactId>tianai-captcha-springboot-starter</artifactId>
            <version>${version.tianai-captcha}</version>
        </dependency>
    </dependencies>

    <build>
        <finalName>beast-api</finalName>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <version>2.2.2.RELEASE</version>
                <configuration>
                    <mainClass>com.thebeastshop.api.Application</mainClass>
                </configuration>
                <executions>
                    <execution>
                        <goals>
                            <goal>repackage</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>
</project>
