<?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>

    <parent>
        <groupId>com.minghusoft</groupId>
        <artifactId>minghusoft-spring-boot</artifactId>
        <version>0.0.2</version>
    </parent>

    <artifactId>minghusoft-spring-boot-core</artifactId>
    <version>0.0.3</version>
    <packaging>jar</packaging>

    <name>minghusoft-spring-boot-core</name>
    <description>JiFan Spring Boot 核心模块 - 提供核心功能实现</description>

    <properties>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <java.version>1.8</java.version>

        <!-- 依赖版本管理 -->
        <joda-time.version>2.10.13</joda-time.version>
        <shiro.version>1.3.0</shiro.version>
        <oro.version>2.0.8</oro.version>
        <freemarker.version>2.3.24-incubating</freemarker.version>
        <geronimo-transaction.version>3.1.1</geronimo-transaction.version>
        <geronimo-jms.version>1.1.1</geronimo-jms.version>
        <commons-cli.version>1.3.1</commons-cli.version>
        <commons-csv.version>1.1</commons-csv.version>
        <commons-net.version>3.3</commons-net.version>
        <commons-io.version>2.13.0</commons-io.version>
        <commons-validator.version>1.5.1</commons-validator.version>
        <commons-codec.version>1.15</commons-codec.version>
        <commons-collections4.version>4.4</commons-collections4.version>
        <commons-dbcp2.version>2.8.0</commons-dbcp2.version>
        <log4j.version>2.17.2</log4j.version>
        <groovy.version>2.4.5</groovy.version>
        <xstream.version>1.4.20</xstream.version>
        <icu4j.version>57.1</icu4j.version>
        <concurrentlinkedhashmap.version>1.3.1</concurrentlinkedhashmap.version>
        <owasp-sanitizer.version>20160628.1</owasp-sanitizer.version>
        <javax-el.version>3.0.1-b04</javax-el.version>
        <javax-servlet.version>4.0.1</javax-servlet.version>
        <javax-jsp.version>2.3.0</javax-jsp.version>
        <esapi.version>2.5.5.0</esapi.version>
        <jackson-databind-java-optional.version>2.4.2</jackson-databind-java-optional.version>
        <httpclient-cache.version>4.5.14</httpclient-cache.version>
        <juel.version>2.2.7</juel.version>
        <poi.version>4.1.2</poi.version>
        <batik.version>1.8pre-r1084380</batik.version>
    </properties>

    <dependencies>


        <!-- 日志相关 -->
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
        </dependency>
        
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-api</artifactId>
            <version>${log4j.version}</version>
        </dependency>
        
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-core</artifactId>
            <version>${log4j.version}</version>
        </dependency>

        <!-- 时间处理 -->
        <dependency>
            <groupId>joda-time</groupId>
            <artifactId>joda-time</artifactId>
            <version>${joda-time.version}</version>
        </dependency>

        <!-- Apache Commons 工具库 -->
        <dependency>
            <groupId>commons-cli</groupId>
            <artifactId>commons-cli</artifactId>
            <version>${commons-cli.version}</version>
        </dependency>

        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-csv</artifactId>
            <version>${commons-csv.version}</version>
        </dependency>

        <dependency>
            <groupId>commons-net</groupId>
            <artifactId>commons-net</artifactId>
            <version>${commons-net.version}</version>
        </dependency>

        <dependency>
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
            <version>${commons-io.version}</version>
        </dependency>
        
        <dependency>
            <groupId>commons-validator</groupId>
            <artifactId>commons-validator</artifactId>
            <version>${commons-validator.version}</version>
        </dependency>
        
        <dependency>
            <groupId>commons-codec</groupId>
            <artifactId>commons-codec</artifactId>
            <version>${commons-codec.version}</version>
        </dependency>

        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-collections4</artifactId>
            <version>${commons-collections4.version}</version>
        </dependency>
        
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-dbcp2</artifactId>
            <version>${commons-dbcp2.version}</version>
        </dependency>

        <!-- 脚本引擎 -->
        <dependency>
            <groupId>org.codehaus.groovy</groupId>
            <artifactId>groovy-all</artifactId>
            <version>${groovy.version}</version>
        </dependency>

        <!-- 序列化 -->
        <dependency>
            <groupId>com.thoughtworks.xstream</groupId>
            <artifactId>xstream</artifactId>
            <version>${xstream.version}</version>
        </dependency>

        <!-- 国际化 -->
        <dependency>
            <groupId>com.ibm.icu</groupId>
            <artifactId>icu4j</artifactId>
            <version>${icu4j.version}</version>
        </dependency>

        <!-- 缓存 -->
        <dependency>
            <groupId>com.googlecode.concurrentlinkedhashmap</groupId>
            <artifactId>concurrentlinkedhashmap-lru</artifactId>
            <version>${concurrentlinkedhashmap.version}</version>
        </dependency>

        <!-- 安全 -->
        <dependency>
            <groupId>com.googlecode.owasp-java-html-sanitizer</groupId>
            <artifactId>owasp-java-html-sanitizer</artifactId>
            <version>${owasp-sanitizer.version}</version>
        </dependency>

        <dependency>
            <groupId>org.owasp.esapi</groupId>
            <artifactId>esapi</artifactId>
            <version>${esapi.version}</version>
        </dependency>

        <!-- Java EE API -->
        <dependency>
            <groupId>javax.el</groupId>
            <artifactId>javax.el-api</artifactId>
            <version>${javax-el.version}</version>
        </dependency>

        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>${javax-servlet.version}</version>
            <scope>provided</scope>
        </dependency>
        
        <dependency>
            <groupId>javax.servlet.jsp</groupId>
            <artifactId>javax.servlet.jsp-api</artifactId>
            <version>${javax-jsp.version}</version>
            <scope>provided</scope>
        </dependency>

        <!-- JAXB API (用于 XML 绑定) -->
        <dependency>
            <groupId>javax.xml.bind</groupId>
            <artifactId>jaxb-api</artifactId>
            <version>2.3.1</version>
        </dependency>
        
        <dependency>
            <groupId>org.glassfish.jaxb</groupId>
            <artifactId>jaxb-runtime</artifactId>
            <version>2.3.1</version>
        </dependency>

        <!-- JSON 处理 -->
        <dependency>
            <groupId>org.zapodot</groupId>
            <artifactId>jackson-databind-java-optional</artifactId>
            <version>${jackson-databind-java-optional.version}</version>
        </dependency>

        <!-- HTTP 客户端 -->
        <dependency>
            <groupId>org.apache.httpcomponents</groupId>
            <artifactId>httpclient-cache</artifactId>
            <version>${httpclient-cache.version}</version>
        </dependency>

        <!-- 表达式语言 -->
        <dependency>
            <groupId>de.odysseus.juel</groupId>
            <artifactId>juel-impl</artifactId>
            <version>${juel.version}</version>
        </dependency>
        
        <dependency>
            <groupId>de.odysseus.juel</groupId>
            <artifactId>juel-spi</artifactId>
            <version>${juel.version}</version>
        </dependency>

        <!-- Office 文档处理 -->
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi</artifactId>
            <version>${poi.version}</version>
        </dependency>

        <!-- 图形处理 -->
        <dependency>
            <groupId>org.codeartisans.thirdparties.swing</groupId>
            <artifactId>batik-all</artifactId>
            <version>${batik.version}</version>
        </dependency>

        <!-- 安全框架 -->
        <dependency>
            <groupId>org.apache.shiro</groupId>
            <artifactId>shiro-core</artifactId>
            <version>${shiro.version}</version>
        </dependency>

        <!-- 模板引擎 -->
        <dependency>
            <groupId>oro</groupId>
            <artifactId>oro</artifactId>
            <version>${oro.version}</version>
        </dependency>

        <dependency>
            <groupId>org.freemarker</groupId>
            <artifactId>freemarker</artifactId>
            <version>${freemarker.version}</version>
        </dependency>

        <!-- 事务管理 -->
        <dependency>
            <groupId>org.apache.geronimo.components</groupId>
            <artifactId>geronimo-transaction</artifactId>
            <version>${geronimo-transaction.version}</version>
        </dependency>

        <dependency>
            <groupId>org.apache.geronimo.specs</groupId>
            <artifactId>geronimo-jms_1.1_spec</artifactId>
            <version>${geronimo-jms.version}</version>
        </dependency>

    </dependencies>
</project>
