<?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>parent</artifactId>
        <groupId>com.wecloud</groupId>
        <version>2.0</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>

    <artifactId>im-paas-biz</artifactId>
    <packaging>jar</packaging>

    <properties>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
        <spring-boot.version>2.5.3</spring-boot.version>
        <rocket.version>4.3.2</rocket.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>com.wecloud</groupId>
            <artifactId>can-common-core</artifactId>
        </dependency>

        <dependency>
            <groupId>com.wecloud</groupId>
            <artifactId>can-common-log</artifactId>
        </dependency>

        <dependency>
            <groupId>com.wecloud</groupId>
            <artifactId>can-common-security</artifactId>
        </dependency>

        <dependency>
            <groupId>com.wecloud</groupId>
            <artifactId>can-common-swagger</artifactId>
        </dependency>

        <dependency>
            <groupId>com.wecloud</groupId>
            <artifactId>can-common-datasource</artifactId>
        </dependency>


        <dependency>
            <groupId>com.wecloud</groupId>
            <artifactId>im-server</artifactId>
            <version>2.0</version>
        </dependency>

        <dependency>
            <groupId>com.google.firebase</groupId>
            <artifactId>firebase-admin</artifactId>
            <version>6.4.0</version>
        </dependency>

        <!-- fastbootWeixin的核心依赖 -->
        <dependency>
            <groupId>com.mxixm</groupId>
            <artifactId>fastboot-weixin</artifactId>
            <version>0.6.2</version>
        </dependency>

        <!-- SpringBoot的web项目，必须 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <!-- 暂时只能使用apache的http，后续可加入其它http支持 -->
        <dependency>
            <groupId>org.apache.httpcomponents</groupId>
            <artifactId>httpcore</artifactId>
        </dependency>

        <!--        友盟 start -->

        <dependency>
            <groupId>org.json</groupId>
            <artifactId>json</artifactId>
            <version>20090211</version>
        </dependency>

        <dependency>
            <groupId>org.apache.httpcomponents</groupId>
            <artifactId>httpclient</artifactId>
            <version>4.5.13</version>
        </dependency>

        <!--        友盟 end -->

        <!-- https://mvnrepository.com/artifact/com.turo/pushy -->
        <!--        apns推送-->
        <dependency>
            <groupId>com.turo</groupId>
            <artifactId>pushy</artifactId>
            <version>0.13.10</version>
        </dependency>


        <!-- wecloud短信 start-->
        <dependency>
            <groupId>cn.wecloud</groupId>
            <artifactId>we-cloud-sdk-sms</artifactId>
            <version>1.0.0</version>
            <exclusions>
                <exclusion>
                    <groupId>org.slf4j</groupId>
                    <artifactId>slf4j-simple</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <!-- wecloud短信 end-->

        <dependency>
            <groupId>com.wecloud</groupId>
            <artifactId>pushserver-client</artifactId>
            <version>0.0.1-SNAPSHOT</version>
        </dependency>
        <dependency>
            <groupId>com.wecloud.imserver</groupId>
            <artifactId>client</artifactId>
            <version>0.0.1-SNAPSHOT</version>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>cn.hutool</groupId>
            <artifactId>hutool-crypto</artifactId>
        </dependency>

        <!-- RocketMq start -->
        <dependency>
            <groupId>org.apache.rocketmq</groupId>
            <artifactId>rocketmq-client</artifactId>
            <version>${rocket.version}</version>
        </dependency>
        <!-- RocketMq start -->

        <dependency>
            <groupId>com.alibaba.spring</groupId>
            <artifactId>spring-context-support</artifactId>
            <version>1.0.11</version>
        </dependency>

        <!--mybatis-->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
        </dependency>
        <!-- druid 连接池 -->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid-spring-boot-starter</artifactId>
        </dependency>

        <!-- mysql -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>

        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
        </dependency>
    </dependencies>
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <version>${spring-boot.version}</version>
                <executions>
                    <execution>
                        <goals>
                            <goal>repackage</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>

            <plugin>
                <groupId>com.wecloud</groupId>
                <artifactId>classencrypt-maven-plugin</artifactId>
                <version>${maven-classencrypt-plugin.version}</version>
                <configuration>
                    <!--                    参数说明-->
                    <!--                    -packages    加密的包名(可为空,多个用","分割)-->
                    <!--                    -libjars     jar/war包lib下要加密jar文件名(可为空,多个用","分割)-->
                    <!--                    -cfgfiles    需要加密的配置文件，一般是classes目录下的yml或properties文件(可为空,多个用","分割)-->
                    <!--                    -excludes     排除的类名(可为空,多个用","分割)-->
                    <!--                    -classpath   外部依赖的jar目录，例如/tomcat/lib(可为空,多个用","分割)-->
                    <!--                    -password         加密密码，如果是#号，则使用无密码模式加密-->
                    <!--                    -code        机器码，在绑定的机器生成，加密后只可在此机器上运行-->
                    <password>wecloud#0-0</password><!--加密打包之后pom.xml会被删除，不用担心在jar包里找到此密码-->
                    <packages>com.wecloud,io.geekidea</packages>
                    <!--                    <cfgfiles>application.yml</cfgfiles>-->
                    <!--                    <excludes>io.geekidea</excludes>-->
                    <!--                    <libjars>a.jar,b.jar</libjars> 多个之间用,分割-->

                    <!--                    机器绑定-->
                    <!--                    机器绑定只允许加密的项目在特定的机器上运行；-->
                    <!--                    在需要绑定的机器上执行以下命令，生成机器码-->
                    <!--                    在cmd目录下，执行 java -jar classencrypt-fatjar.jar -C-->
                    <!--                    例如我本机是： 4B1ABEBA8423DEE07469C1E38B3CF7881BBAC2F6C072365DF2297D84370991CC97E8330B0E5FB4ADFF0F87A038F4773A-->
                    <!--                    <code>4B1ABEBA8423DEE07469C1E38B3CF7881BBAC2F6C072365DF2297D84370991CC97E8330B0E5FB4ADFF0F87A038F4773A</code>-->
                </configuration>
                <executions>
                    <execution>
                        <phase>package</phase>
                        <goals>
                            <goal>classEncrypt</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>

        </plugins>
    </build>

</project>
