优化 gradle
diff --git a/build.gradle b/build.gradle
index a4cd5b1..3bf4e38 100644
--- a/build.gradle
+++ b/build.gradle
@@ -1,40 +1,146 @@
plugins {
id 'java'
- id 'org.springframework.boot' version '2.1.6.RELEASE'
- id 'io.spring.dependency-management' version '1.0.8.RELEASE'
+ id 'org.springframework.boot' version '2.1.6.RELEASE' apply false
id 'org.jetbrains.kotlin.jvm' version '1.3.31'
id 'org.jetbrains.kotlin.plugin.spring' version '1.3.31'
+ id 'org.jetbrains.kotlin.plugin.jpa' version '1.3.31' apply false
id "com.palantir.git-version" version "0.12.0-rc2"
- id 'com.palantir.docker' version '0.22.1'
+ id 'com.palantir.docker' version '0.22.1' apply false
}
+group = 'com.supwisdom'
+
allprojects {
repositories {
jcenter()
mavenCentral()
}
-}
+ ext {
+ set('junit_jupiter_version', "5.5.2")
+ set("junit_platform_version", "1.5.2")
+ set("mockitoVersion", "3.1.0")
+ }
-ext {
- set('junit_jupiter_version', "5.5.2")
- set("junit_platform_version", "1.5.2")
- set("mockitoVersion", "3.1.0")
-}
-
-subprojects {
apply plugin: 'java'
- version = '1.0'
- dependencies {
- testImplementation("org.junit.jupiter:junit-jupiter-api:${junit_jupiter_version}")
- testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:${junit_jupiter_version}")
- testRuntimeOnly("org.junit.platform:junit-platform-launcher:${junit_platform_version}")
- testImplementation("io.mockk:mockk:1.9.3")
- testImplementation("org.hamcrest:hamcrest:2.1")
+ apply plugin: 'io.spring.dependency-management'
+
+ sourceCompatibility = JavaVersion.VERSION_1_8
+ targetCompatibility = JavaVersion.VERSION_1_8
+
+ compileKotlin {
+ kotlinOptions {
+ freeCompilerArgs = ['-Xjsr305=strict']
+ jvmTarget = jdkVersion
+ }
+ }
+
+ compileTestKotlin {
+ kotlinOptions {
+ freeCompilerArgs = ['-Xjsr305=strict']
+ jvmTarget = jdkVersion
+ }
+ }
+
+ version = gitVersion()
+ ext {
+ details = versionDetails()
}
}
-bootJar {
- enabled = false
+
+subprojects {
+
+ ext {
+ set('springCloudVersion', "Hoxton.RELEASE")
+ }
+
+ dependencies {
+ ext {
+ slf4jVersion = '1.7.26'
+ beanutilsVersion = '1.9.3'
+ codecVersion = '1.13'
+ lang3Version = '3.9'
+ commonCodecVersion = '1.12'
+ lombokVersion = '1.18.8'
+ javaELVersion = '3.0.0'
+ shedlockVersion = '2.5.0'
+ jose4jVersion = '0.6.5'
+ jcabiManifestsVersion = '1.1'
+ kotlnLogVersion = '1.6.26'
+ slf4jVersion = '1.7.26'
+ gsonVersion = '2.8.5'
+ dbcpVersion = '1.4'
+ log4jVersion = '1.2.17'
+ alibabFastjsonVerison = '1.2.60'
+ beanutilsVersion = '1.9.3'
+ alipaySDKVersion = '3.7.110.ALL'
+ lombokVersion = '1.18.8'
+ resetAssuredVersion = '3.3.0'
+ hamcrestVersion = '2.1'
+ mockkVersion = '1.9.3'
+ commonNetVersion = '3.6'
+ kaptchaVersion = '2.3.2'
+ jerseyClientVersion = '1.19'
+ javaxWSRSVersion = '2.1.1'
+ dom4jVersion = '2.1.1'
+ springSocialVersion = '1.1.6.RELEASE'
+ springKafkaVersion = '2.2.8.RELEASE'
+ postgresVersion = '42.2.5'
+ }
+ implementation "org.jetbrains.kotlin:kotlin-reflect"
+ implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8"
+
+ implementation "org.springframework.boot:spring-boot-starter-data-jpa"
+ implementation "org.springframework.boot:spring-boot-starter-data-redis"
+ implementation "org.springframework.boot:spring-boot-starter-validation"
+
+ implementation "javax.validation:validation-api"
+ implementation "com.jcabi:jcabi-manifests:${jcabiManifestsVersion}"
+ implementation "org.slf4j:slf4j-parent:${slf4jVersion}"
+ implementation "org.slf4j:slf4j-api:${slf4jVersion}"
+ implementation "org.postgresql:postgresql:${postgresVersion}"
+ implementation "io.github.microutils:kotlin-logging:${kotlnLogVersion}"
+ implementation "org.slf4j:slf4j-parent:${slf4jVersion}"
+ implementation "com.google.code.gson:gson:${gsonVersion}"
+ implementation "commons-dbcp:commons-dbcp:${dbcpVersion}"
+ implementation "commons-codec:commons-codec:${commonCodecVersion}"
+ implementation "log4j:log4j:${log4jVersion}"
+ implementation "com.alibaba:fastjson:${alibabFastjsonVerison}"
+ implementation "com.fasterxml.jackson.module:jackson-module-kotlin"
+
+
+ annotationProcessor "org.springframework.boot:spring-boot-configuration-processor"
+ annotationProcessor "org.projectlombok:lombok:${lombokVersion}"
+ compileOnly "org.projectlombok:lombok:${lombokVersion}"
+
+ // implementation "javax.el:javax.el-api:${javaELVersion}"
+ // implementation "javax.servlet:javax.servlet-api:4.0.1"
+// testImplementation 'org.springframework:spring-test'
+// testImplementation 'org.springframework.boot:spring-boot-test'
+// implementation "javax.servlet:jstl:1.2"
+// implementation "taglibs:standard:1.1.2"
+ testImplementation "org.springframework.boot:spring-boot-starter-test"
+ testImplementation "org.junit.jupiter:junit-jupiter-api:${junit_jupiter_version}"
+ testRuntimeOnly "org.junit.jupiter:junit-jupiter-engine:${junit_jupiter_version}"
+ testRuntimeOnly "org.junit.platform:junit-platform-launcher:${junit_platform_version}"
+ testImplementation "io.mockk:mockk:${mockkVersion}"
+ testImplementation "org.hamcrest:hamcrest:${hamcrestVersion}"
+ testImplementation "io.rest-assured:rest-assured:${resetAssuredVersion}"
+ testImplementation "io.rest-assured:spring-mock-mvc:${resetAssuredVersion}"
+ }
+
+ test {
+ useJUnitPlatform()
+ testLogging {
+ events "passed", "skipped", "failed"
+ }
+ }
+
+ dependencyManagement {
+ imports {
+ mavenBom "org.springframework.cloud:spring-cloud-dependencies:${springCloudVersion}"
+ }
+ }
}
-group = 'com.supwisdom'
\ No newline at end of file
+