76 lines
2.6 KiB
Groovy
76 lines
2.6 KiB
Groovy
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
|
|
|
|
import java.util.concurrent.Callable
|
|
|
|
apply plugin: 'io.spring.convention.spring-module'
|
|
apply plugin: 'kotlin'
|
|
|
|
dependencies {
|
|
management platform(project(":spring-security-dependencies"))
|
|
api project(':spring-security-crypto')
|
|
api 'org.springframework:spring-aop'
|
|
api 'org.springframework:spring-beans'
|
|
api 'org.springframework:spring-context'
|
|
api 'org.springframework:spring-core'
|
|
api 'org.springframework:spring-expression'
|
|
api 'io.micrometer:micrometer-observation'
|
|
|
|
optional 'com.fasterxml.jackson.core:jackson-databind'
|
|
optional 'io.projectreactor:reactor-core'
|
|
optional 'jakarta.annotation:jakarta.annotation-api'
|
|
optional 'org.aspectj:aspectjrt'
|
|
optional 'org.springframework:spring-jdbc'
|
|
optional 'org.springframework:spring-tx'
|
|
optional 'org.jetbrains.kotlinx:kotlinx-coroutines-reactor'
|
|
|
|
testImplementation 'commons-collections:commons-collections'
|
|
testImplementation 'io.projectreactor:reactor-test'
|
|
testImplementation "org.assertj:assertj-core"
|
|
testImplementation "org.junit.jupiter:junit-jupiter-api"
|
|
testImplementation "org.junit.jupiter:junit-jupiter-params"
|
|
testImplementation "org.junit.jupiter:junit-jupiter-engine"
|
|
testImplementation "org.mockito:mockito-core"
|
|
testImplementation "org.mockito:mockito-junit-jupiter"
|
|
testImplementation "org.springframework:spring-core-test"
|
|
testImplementation "org.springframework:spring-test"
|
|
testImplementation 'org.skyscreamer:jsonassert'
|
|
testImplementation 'org.springframework:spring-test'
|
|
testImplementation 'org.jetbrains.kotlin:kotlin-reflect'
|
|
testImplementation 'org.jetbrains.kotlin:kotlin-stdlib-jdk8'
|
|
testImplementation 'io.mockk:mockk'
|
|
|
|
testRuntimeOnly 'org.hsqldb:hsqldb'
|
|
}
|
|
|
|
task springVersion(type: org.gradle.api.tasks.WriteProperties) {
|
|
destinationFile = file("${buildDir}/versions/spring-security.versions")
|
|
property("org.springframework:spring-core", springVersion())
|
|
}
|
|
|
|
tasks.processResources {
|
|
into('META-INF') {
|
|
from project.tasks.springVersion.outputs
|
|
}
|
|
}
|
|
|
|
configure(project.tasks.withType(Test)) {
|
|
doFirst {
|
|
systemProperties['springSecurityVersion'] = version
|
|
systemProperties['springVersion'] = springVersion().call()
|
|
}
|
|
}
|
|
|
|
Callable<String> springVersion() {
|
|
return (Callable<String>) { project.configurations.compileClasspath.resolvedConfiguration.resolvedArtifacts
|
|
.find { it.name == 'spring-core' }.moduleVersion.id.version }
|
|
}
|
|
|
|
tasks.withType(KotlinCompile).configureEach {
|
|
kotlinOptions {
|
|
languageVersion = "1.7"
|
|
apiVersion = "1.7"
|
|
freeCompilerArgs = ["-Xjsr305=strict", "-Xsuppress-version-warnings"]
|
|
jvmTarget = "17"
|
|
}
|
|
}
|