/*
 * ********************************************************************************************************************
 *
 *                     :*$@@%$*:                         ;:                ;;    ;;
 *                   :@@%!  :!@@%:                       %!             ;%%@@%$ =@@@@@@@%;     @%@@@%%%%@@@@@
 *                  :@%;       :$=                       %%$$$%$$         ;$$  ;$@=   !@$
 *                  =@!                                  %!              @ $=;%   !@@@%:      !$$$$$$$$$$$$$$=
 *                  =@*                                  %!              @ $= % %@=   =%@!      %=
 *             *$%%! @@=        ;=$%%%$*:                %!              @ $= % =%%%%%%@$      *%:         =%
 *           %@@!:    !@@@%=$@@@@%!  :*@@$:              %!              @ $= % $*     ;@      @*          :%*
 *         ;@@!          ;!!!;:         ;@%:      =======@%========*     @ $$ % $%*****$@     :@$=*********=@$
 *         $@*   ;@@@%=!:                *@*             
 *         =@$    ;;;!=%@@@@=!           =@!      
 *          %@$:      =@%: :*@@@*       %@=                    Copyright (c) 2016-2019.  北京上格云技术有限公司
 *           ;%@@$=$@@%*       *@@@$=%@@%;                              
 *              ::;::             ::;::                                              All rights reserved.
 *
 * ********************************************************************************************************************
 */

group rootProject.group
version rootProject.version

apply plugin: "kotlin"
apply plugin: "org.jetbrains.dokka"
apply plugin: "war"
apply plugin: 'org.springframework.boot'
apply plugin: 'io.spring.dependency-management'

sourceCompatibility = JVM_TARGET

compileKotlin {
    kotlinOptions.jvmTarget = JVM_TARGET
}
compileTestKotlin {
    kotlinOptions.jvmTarget = JVM_TARGET
}

dependencies {
    ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    // kotlin 依赖
    compile group: "org.jetbrains.kotlin", name: "kotlin-stdlib-jdk8", version: KOTLIN_VERSION
    compile group: "org.jetbrains.kotlin", name: "kotlin-reflect", version: KOTLIN_VERSION

    ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    // spring boot 依赖
    compile(group: "org.springframework.boot", name: "spring-boot-starter-web", version: SPRING_BOOT_VERSION){exclude group: 'org.apache.logging.log4j',module:'log4j-api'}
    compile group: "org.apache.logging.log4j", name: "log4j-api", version: LOG4J_VERSION
    compile group: "org.springframework.boot", name: "spring-boot-configuration-processor", version: SPRING_BOOT_VERSION
    compile group: "org.springframework.boot", name: "spring-boot-starter-actuator", version: SPRING_BOOT_VERSION
    compile group: "org.springframework.boot", name: "spring-boot-starter-logging", version: SPRING_BOOT_VERSION
    //消息
//    compile group: "org.springframework.boot", name: "spring-boot-starter-activemq", version: SPRING_BOOT_VERSION
    providedCompile group: "org.springframework.boot", name:"spring-boot-starter-tomcat", version: SPRING_BOOT_VERSION
    // spring boot 缓存
    compile group:"org.springframework.boot", name:"spring-boot-starter-cache", version: SPRING_BOOT_VERSION
    // 单元测试
    compile group:"org.springframework.boot", name:"spring-boot-starter-test", version: SPRING_BOOT_VERSION


    ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    // spring cloud 依赖
//    compile group: 'org.springframework.cloud', name: 'spring-cloud-starter-eureka', version: SPRING_CLOUD_VERSION

    ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    // MySQL
    // https://mvnrepository.com/artifact/mysql/mysql-connector-java
//    compile group: 'mysql', name: 'mysql-connector-java', version: MYSQL_VERSION

//    // PostgreSQL
//    //https://mvnrepository.com/artifact/org.postgresql/postgresql
//    compile group: 'org.postgresql',    name: 'postgresql',     version: POSTGRESQL_VERSION

    ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    // RESTful API 文档生成工具
    // https://mvnrepository.com/artifact/org.springdoc/springdoc-openapi-ui
    compile group: 'org.springdoc', name: 'springdoc-openapi-ui', version: SPRING_DOC_VERSION
//     https://mvnrepository.com/artifact/org.springdoc/springdoc-openapi-common
    compile group: "org.springdoc", name: "springdoc-openapi-common", version: SPRING_DOC_VERSION
    // PlantUML
    // https://mvnrepository.com/artifact/com.credibledoc/plantuml-core
    compile group: "com.credibledoc", name: "plantuml-core", version: PLANTUML_VERSION

    ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    // persagy依赖
    compile group: "com.alibaba", name: "fastjson", version: FAST_JSON_VERSION
    compile(group: "cn.sagacloud", name: "saga-kotlin-base", version: SYBOTAN_KOTLIN_VERSION) {exclude group: 'com.alibaba',module:'fastjson'}
    compile group: "cn.sagacloud", name: "saga-kotlin-database", version: SYBOTAN_KOTLIN_VERSION
    compile(group: "cn.sagacloud", name: "saga-kotlin-mybatis", version: SYBOTAN_KOTLIN_VERSION) {exclude group: 'org.mybatis',module:'mybatis'}
    compile group: "org.mybatis", name: "mybatis", version: MYBATIS_CORE_VERSION
    compile group: "cn.sagacloud", name: "saga-kotlin-mysql", version: SYBOTAN_KOTLIN_VERSION
    compile group: "cn.sagacloud", name: "saga-service-base", version: SYBOTAN_SERVICE_VERSION
    compile group: "cn.sagacloud", name: "saga-service-mybatis", version: SYBOTAN_SERVICE_VERSION
    compile group: "cn.sagacloud", name: "saga-service-mysql", version: SYBOTAN_SERVICE_VERSION
    compile group: "com.persagy", name: "dmp-digital-starter", version: DIGITAL_START_VERSION

    // compile project(":data-core")

    // TestNG 测试框架
    compile group: "org.testng", name: "testng", version: TESTNG_VERSION
    // Log 工具
    compile group: "org.projectlombok", name: "lombok", version: LOMBOK_VERSION
    compile group: 'org.apache.skywalking', name: 'apm-toolkit-logback-1.x', version: APM_SKYWALKING_VERSION
    // spring cloud 依赖
    compile(group: 'org.springframework.cloud', name: 'spring-cloud-starter-netflix-eureka-client', version:  SPRING_CLOUD_CONFIG_VERSION){exclude group: 'com.thoughtworks.xstream',module:'xstream'}
    compile(group: 'com.thoughtworks.xstream', name: 'xstream', version:  XSTREAM_VERSION)

    ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//    ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//    // 二维码与条形码
//    // https://mvnrepository.com/artifact/com.google.zxing/core
//    compile group: "com.google.zxing", name: "core", version: ZXING_VERSION
    
}