<?xml version="1.0" encoding="UTF-8"?>
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0"
         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>

    <parent>
        <groupId>cool.scx</groupId>
        <artifactId>scx-parent</artifactId>
        <version>21</version>
        <relativePath/>
    </parent>

    <artifactId>scx-common</artifactId>
    <packaging>jar</packaging>
    <version>2.6.2</version>

    <name>SCX Common</name>
    <url>https://github.com/scx567888/scx-common</url>
    <description>
        SCX Common
    </description>

    <developers>
        <developer>
            <id>scx567888</id>
            <name>scx567888</name>
            <email>scx567888@outlook.com</email>
        </developer>
    </developers>

    <licenses>
        <license>
            <name>MIT License</name>
            <url>https://github.com/scx567888/scx-common/blob/master/LICENSE</url>
        </license>
    </licenses>

    <scm>
        <connection>scm:git:https://github.com/scx567888/scx-common.git</connection>
        <developerConnection>scm:git:https://github.com/scx567888/scx-common.git</developerConnection>
        <url>https://github.com/scx567888/scx-common</url>
    </scm>

    <build>
        <plugins>

            <!-- 此插件用于将项目打包为 可执行 jar 包-->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jar-plugin</artifactId>
                <configuration>
                    <archive>
                        <manifest>
                            <!-- 因为 scx 并不是可执行 jar 包, 所以此处不添加 classpath 到描述文件中 -->
                            <addClasspath>false</addClasspath>
                        </manifest>
                    </archive>
                    <!-- 此处因为没有类似 maven-source-plugin 插件中 excludeResources 的选项 -->
                    <!-- 所以在这里手动排除资源文件 , 具体文件说明见下方 -->
                    <excludes>
                        <!-- 默认 git 占位空文件 -->
                        <exclude>/.gitkeep</exclude>
                    </excludes>
                </configuration>
            </plugin>

        </plugins>
    </build>


    <dependencies>

        <!-- vert.x 核心包 -->
        <dependency>
            <groupId>io.vertx</groupId>
            <artifactId>vertx-core</artifactId>
            <version>${vertx.version}</version>
        </dependency>

        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-core</artifactId>
            <version>${jackson.version}</version>
        </dependency>

        <!-- Jackson 数据类型拓展包 针对 (jsr310)[https://jcp.org/en/jsr/detail?id=310] -->
        <!-- 添加了对新的时间和日期Api (LocalDateTime、DateTimeFormatter) 等的支持 -->
        <dependency>
            <groupId>com.fasterxml.jackson.datatype</groupId>
            <artifactId>jackson-datatype-jsr310</artifactId>
            <version>${jackson.version}</version>
        </dependency>

        <!-- Jackson XML 兼容包 -->
        <dependency>
            <groupId>com.fasterxml.jackson.dataformat</groupId>
            <artifactId>jackson-dataformat-xml</artifactId>
            <version>${jackson.version}</version>
        </dependency>

        <!-- Spring Context 框架 , 主要使用其依赖注入及部分注解功能 -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>${spring-framework.version}</version>
        </dependency>

        <!-- 轻量级的加密解密工具包 , 用于简化一些密码校验及敏感数据加密的操作 -->
        <dependency>
            <groupId>org.jasypt</groupId>
            <artifactId>jasypt</artifactId>
            <version>${jasypt.version}</version>
        </dependency>

        <!-- jna -->
        <dependency>
            <groupId>net.java.dev.jna</groupId>
            <artifactId>jna-platform</artifactId>
            <version>${jna.version}</version>
        </dependency>

        <!-- TestNG 测试包 -->
        <dependency>
            <groupId>org.testng</groupId>
            <artifactId>testng</artifactId>
            <version>${testng.version}</version>
            <scope>test</scope>
        </dependency>

    </dependencies>

    <properties>

        <!-- *********************** 以下为依赖包版本 *********************** -->
        <vertx.version>4.5.1</vertx.version>
        <jackson.version>2.16.1</jackson.version>
        <spring-framework.version>6.1.2</spring-framework.version>
        <jasypt.version>1.9.3</jasypt.version>
        <jna.version>5.14.0</jna.version>
        <testng.version>7.9.0</testng.version>

    </properties>

</project>
