<?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>
    <!--灿能微服务生态系统-->
    <groupId>com.njcn</groupId>
    <artifactId>pqs</artifactId>
    <version>1.0.0</version>
    <modules>
        <module>pqs-common</module>
        <module>pqs-gateway</module>
        <module>pqs-user</module>
        <module>pqs-auth</module>
        <module>pqs-system</module>
        <module>pqs-harmonic</module>
        <module>pqs-device</module>
        <module>pqs-energy</module>
        <module>pqs-event</module>
        <module>pqs-job</module>
        <module>pqs-job/job-api</module>
        <module>pqs-advance</module>
        <module>pqs-prepare</module>
        <module>pqs-process</module>
        <module>pqs-influx</module>
    </modules>
    <packaging>pom</packaging>
    <name>灿能微服务生态系统</name>
    <distributionManagement>
        <repository>
            <id>nexus-releases</id>
            <name>Nexus Release Repository</name>
            <url>http://192.168.1.13:8001/nexus/content/repositories/releases/</url>
        </repository>
        <snapshotRepository>
            <id>nexus-snapshots</id>
            <name>Nexus Snapshot Repository</name>
            <url>http://192.168.1.13:8001/nexus/content/repositories/snapshots/</url>
        </snapshotRepository>
    </distributionManagement>
    <properties>
        <!--中间件目标地址-->
<!--        <middle.server.url>101.132.25.239</middle.server.url>-->
        <middle.server.url>192.168.1.13</middle.server.url>
        <!--微服务模块发布地址-->
        <service.server.url>127.0.0.1</service.server.url>
        <!--docker仓库地址-->
        <docker.server.url>192.168.1.13</docker.server.url>
        <!--nacos的ip:port-->
        <nacos.url>${middle.server.url}:18848</nacos.url>
        <!--服务器发布内容为空-->
<!--        <nacos.namespace></nacos.namespace>-->
        <nacos.namespace>fd74182b-1fce-4dba-afa7-2623b0376205</nacos.namespace>
        <!--sentinel:port-->
        <sentinel.url>${middle.server.url}:8080</sentinel.url>
        <!--网关地址，主要用于配置swagger中认证token-->
        <gateway.url>${service.server.url}:10215</gateway.url>
        <!--docker远程守护进程的url-->
        <docker.url>http://${docker.server.url}:2375</docker.url>
        <!--docker远程harbor，url-->
        <docker.repostory>${docker.server.url}:8090</docker.repostory>
        <!--docker远程项目仓库名-->
        <docker.registry.name>njcn</docker.registry.name>
        <!--切换阿里&华为的配置sdk-->
        <micro.sdk>common-microservice</micro.sdk>
<!--        <micro.sdk>common-huawei</micro.sdk>-->
        <docker.operate>site</docker.operate>
        <java.version>1.8</java.version>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
        <!--三剑客版本-->
        <springboot.version>2.3.12.RELEASE</springboot.version>
<!--        <springcloud.version>Hoxton.SR12</springcloud.version>-->
        <springcloud.version>Hoxton.SR12</springcloud.version>
        <springcloud.alibaba.version>2.2.7.RELEASE</springcloud.alibaba.version>
        <hutool.version>5.7.9</hutool.version>
        <knife4j.version>3.0.2</knife4j.version>
        <knife4j.aggregation.version>2.0.8</knife4j.aggregation.version>
        <lombok.version>1.18.18</lombok.version>
        <mybatis.version>2.1.3</mybatis.version>
        <druid.version>1.2.5</druid.version>
        <mysql.version>8.0.19</mysql.version>
        <mariadb.version>2.4.0</mariadb.version>
        <oracle.version>21.6.0.0</oracle.version>
        <orai18n.version>21.1.0.0</orai18n.version>
        <mybatis-plus.version>3.4.2</mybatis-plus.version>
        <dynamic-datasource.version>3.5.1</dynamic-datasource.version>
        <mybatis-plus.jeffreyning.version>1.5.1-RELEASE</mybatis-plus.jeffreyning.version>
        <mybatis-plus-generator.version>3.5.1</mybatis-plus-generator.version>
        <velocity.version>2.3</velocity.version>
        <jjwt.version>0.9.1</jjwt.version>
        <feignOkhttp.version>11.2</feignOkhttp.version>
        <antisamy.version>1.6.4</antisamy.version>
        <kaptcha.version>2.3.2</kaptcha.version>
        <bcprov-jdk15on.version>1.68</bcprov-jdk15on.version>
        <commons-lang3.version>3.12.0</commons-lang3.version>
        <commons-io.version>2.8.0</commons-io.version>
        <commons-codec.version>1.15</commons-codec.version>
        <sentinel.datasource.nacos.version>1.8.1</sentinel.datasource.nacos.version>
        <jackson>2.12.4</jackson>
        <easyexcel>3.0.5</easyexcel>
        <influxdb-java.version>2.18</influxdb-java.version>
        <echarts.version>3.0.0.6</echarts.version>
        <gson.version>2.8.9</gson.version>
        <xxl-job.version>2.3.0</xxl-job.version>
        <mqtt.version>1.2.7</mqtt.version>
        <easypoi.version>4.4.0</easypoi.version>
        <progressbar.version>0.5.3</progressbar.version>
        <okhttp.version>4.8.1</okhttp.version>
        <minio.version>8.2.1</minio.version>
        <spring-cloud-huawei.version>1.7.0-Hoxton</spring-cloud-huawei.version>
    </properties>
    <dependencyManagement>
        <dependencies>
            <!--三剑客依赖******start-->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-dependencies</artifactId>
                <version>${springboot.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>${springcloud.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-alibaba-dependencies</artifactId>
                <version>${springcloud.alibaba.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <!--华为云cse微服务引擎-->
            <dependency>
                <groupId>com.huaweicloud</groupId>
                <artifactId>spring-cloud-huawei-dependencies</artifactId>
                <version>${spring-cloud-huawei.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <!--三剑客依赖******end-->
            <!--java工具包-->
            <dependency>
                <groupId>cn.hutool</groupId>
                <artifactId>hutool-all</artifactId>
                <version>${hutool.version}</version>
            </dependency>
            <!--java简化开发工具-->
            <dependency>
                <groupId>org.projectlombok</groupId>
                <artifactId>lombok</artifactId>
                <version>${lombok.version}</version>
            </dependency>
            <!--后端接口文档整合了swagger-->
            <dependency>
                <groupId>com.github.xiaoymin</groupId>
                <artifactId>knife4j-spring-boot-starter</artifactId>
                <version>${knife4j.version}</version>
            </dependency>
            <dependency>
                <groupId>com.github.xiaoymin</groupId>
                <artifactId>knife4j-spring-ui</artifactId>
                <version>${knife4j.version}</version>
            </dependency>
            <dependency>
                <groupId>com.github.xiaoymin</groupId>
                <artifactId>knife4j-aggregation-spring-boot-starter</artifactId>
                <!--在引用时请在maven中央仓库搜索aggregation最新版本号-->
                <version>${knife4j.aggregation.version}</version>
            </dependency>
            <!--数据库相关********satrt-->
            <dependency>
                <groupId>org.mybatis.spring.boot</groupId>
                <artifactId>mybatis-spring-boot-starter</artifactId>
                <version>${mybatis.version}</version>
            </dependency>
            <!--druid连接池-->
            <dependency>
                <groupId>com.alibaba</groupId>
                <artifactId>druid-spring-boot-starter</artifactId>
                <version>${druid.version}</version>
            </dependency>
            <!--mysql驱动-->
            <dependency>
                <groupId>mysql</groupId>
                <artifactId>mysql-connector-java</artifactId>
                <version>${mysql.version}</version>
            </dependency>
            <!--mariaDB驱动-->
            <dependency>
                <groupId>org.mariadb.jdbc</groupId>
                <artifactId>mariadb-java-client</artifactId>
                <version>${mariadb.version}</version>
            </dependency>
            <!--oracle驱动-->
            <dependency>
                <groupId>com.oracle.database.jdbc</groupId>
                <artifactId>ojdbc8</artifactId>
                <version>${oracle.version}</version>
            </dependency>
            <!-- 不支持的字符集 (在类路径中添加 orai18n.jar): ZHS16GBK -->
            <dependency>
                <groupId>com.oracle.database.nls</groupId>
                <artifactId>orai18n</artifactId>
                <version>${orai18n.version}</version>
            </dependency>
            <!-- mybatis-plus -->
            <dependency>
                <groupId>com.baomidou</groupId>
                <artifactId>mybatis-plus-boot-starter</artifactId>
                <version>${mybatis-plus.version}</version>
            </dependency>
            <dependency>
                <groupId>com.baomidou</groupId>
                <artifactId>mybatis-plus-generator</artifactId>
                <version>${mybatis-plus-generator.version}</version>
            </dependency>
            <dependency>
                <groupId>com.github.jeffreyning</groupId>
                <artifactId>mybatisplus-plus</artifactId>
                <version>${mybatis-plus.jeffreyning.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.velocity</groupId>
                <artifactId>velocity-engine-core</artifactId>
                <version>${velocity.version}</version>
            </dependency>
            <!--数据库相关********end-->
            <!--jjwt-->
            <dependency>
                <groupId>io.jsonwebtoken</groupId>
                <artifactId>jjwt</artifactId>
                <version>${jjwt.version}</version>
            </dependency>
            <!--openFeign的底层连接方式,测试效率最高 -->
            <dependency>
                <groupId>io.github.openfeign</groupId>
                <artifactId>feign-okhttp</artifactId>
                <version>${feignOkhttp.version}</version>
            </dependency>
            <!--防止XSS攻击的antiSamy-->
            <dependency>
                <groupId>org.owasp.antisamy</groupId>
                <artifactId>antisamy</artifactId>
                <version>${antisamy.version}</version>
            </dependency>
            <!--图形验证码-->
            <dependency>
                <groupId>com.github.penggle</groupId>
                <artifactId>kaptcha</artifactId>
                <version>${kaptcha.version}</version>
            </dependency>
            <!-- 国密加解密工具包 -->
            <dependency>
                <groupId>org.bouncycastle</groupId>
                <artifactId>bcprov-jdk15on</artifactId>
                <version>${bcprov-jdk15on.version}</version>
            </dependency>
            <!-- commons通用包 -->
            <dependency>
                <groupId>org.apache.commons</groupId>
                <artifactId>commons-lang3</artifactId>
                <version>${commons-lang3.version}</version>
            </dependency>
            <dependency>
                <groupId>commons-io</groupId>
                <artifactId>commons-io</artifactId>
                <version>${commons-io.version}</version>
            </dependency>
            <dependency>
                <groupId>commons-codec</groupId>
                <artifactId>commons-codec</artifactId>
                <version>${commons-codec.version}</version>
            </dependency>
            <dependency>
                <groupId>com.alibaba.csp</groupId>
                <artifactId>sentinel-datasource-nacos</artifactId>
                <version>${sentinel.datasource.nacos.version}</version>
            </dependency>
            <!--jackson依赖-->
            <dependency>
                <groupId>com.fasterxml.jackson.core</groupId>
                <artifactId>jackson-databind</artifactId>
                <version>${jackson}</version>
            </dependency>
            <!--此处需要注意的事，databind自身依赖的jackson-core/jackson-annotations由于版本偏低，会出现异常-->
            <dependency>
                <groupId>com.fasterxml.jackson.core</groupId>
                <artifactId>jackson-core</artifactId>
                <version>${jackson}</version>
            </dependency>
            <dependency>
                <groupId>com.fasterxml.jackson.core</groupId>
                <artifactId>jackson-annotations</artifactId>
                <version>${jackson}</version>
            </dependency>
            <dependency>
                <groupId>com.fasterxml.jackson.datatype</groupId>
                <artifactId>jackson-datatype-jsr310</artifactId>
                <version>${jackson}</version>
            </dependency>
            <dependency>
                <groupId>com.alibaba</groupId>
                <artifactId>easyexcel</artifactId>
                <version>${easyexcel}</version>
            </dependency>
            <dependency>
                <groupId>com.github.abel533</groupId>
                <artifactId>ECharts</artifactId>
                <version>${echarts.version}</version>
            </dependency>
            <!-- echarts绘图所需，可以将包含function的对象转为json -->
            <dependency>
                <groupId>com.google.code.gson</groupId>
                <artifactId>gson</artifactId>
                <version>${gson.version}</version>
            </dependency>
            <!-- xxl-job-core -->
            <dependency>
                <groupId>com.xuxueli</groupId>
                <artifactId>xxl-job-core</artifactId>
                <version>${xxl-job.version}</version>
            </dependency>
            <dependency>
                <groupId>com.github.tocrhz</groupId>
                <artifactId>mqtt-spring-boot-starter</artifactId>
                <version>${mqtt.version}</version>
            </dependency>
            <dependency>
                <groupId>cn.afterturn</groupId>
                <artifactId>easypoi-spring-boot-starter</artifactId>
                <version>${easypoi.version}</version>
            </dependency>
            <!--调用minio服务器-->
            <dependency>
                <groupId>me.tongfei</groupId>
                <artifactId>progressbar</artifactId>
                <version>${progressbar.version}</version>
            </dependency>
            <dependency>
                <groupId>com.squareup.okhttp3</groupId>
                <artifactId>okhttp</artifactId>
                <version>${okhttp.version}</version>
            </dependency>
            <dependency>
                <groupId>io.minio</groupId>
                <artifactId>minio</artifactId>
                <version>${minio.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>com.squareup.okhttp3</groupId>
                        <artifactId>okhttp</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <!-- 多数据源切换，当数据源为oracle时需要使用 -->
            <dependency>
                <groupId>com.baomidou</groupId>
                <artifactId>dynamic-datasource-spring-boot-starter</artifactId>
                <version>${dynamic-datasource.version}</version>
            </dependency>

        </dependencies>
    </dependencyManagement>
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <version>2.2.2.RELEASE</version>
                <configuration>
                    <fork>true</fork>
                    <addResources>true</addResources>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.1</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
        </plugins>
        <resources>
            <resource>
                <directory>src/main/resources</directory>
                <filtering>true</filtering>
            </resource>
            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.xml</include>
                </includes>
            </resource>
        </resources>
    </build>
</project>
