import org.jetbrains.kotlin.gradle.tasks.KotlinCompile apply plugin: 'io.spring.convention.spring-module' apply plugin: 'trang' apply plugin: 'kotlin' repositories { maven { url "https://build.shibboleth.net/nexus/content/repositories/releases/" } } dependencies { management platform(project(":spring-security-dependencies")) // NB: Don't add other compile time dependencies to the config module as this breaks tooling api project(':spring-security-core') api 'org.springframework:spring-aop' api 'org.springframework:spring-beans' api 'org.springframework:spring-context' api 'org.springframework:spring-core' optional project(':spring-security-ldap') optional project(':spring-security-messaging') optional project(':saml2-service-provider-opensaml3') optional project(':saml2-service-provider-opensaml4') optional project(':spring-security-oauth2-client') optional project(':spring-security-oauth2-jose') optional project(':spring-security-oauth2-resource-server') optional project(':spring-security-openid') optional project(':spring-security-rsocket') optional project(':spring-security-web') optional 'io.projectreactor:reactor-core' optional 'org.aspectj:aspectjweaver' optional 'org.springframework:spring-jdbc' optional 'org.springframework:spring-messaging' optional 'org.springframework:spring-tx' optional 'org.springframework:spring-webmvc' optional'org.springframework:spring-web' optional'org.springframework:spring-webflux' optional'org.springframework:spring-websocket' optional 'org.jetbrains.kotlin:kotlin-reflect' optional 'org.jetbrains.kotlin:kotlin-stdlib-jdk8' provided 'javax.servlet:javax.servlet-api' testImplementation project(':spring-security-aspects') testImplementation project(':spring-security-cas') testImplementation project(':spring-security-test') testImplementation project(path : ':spring-security-core', configuration : 'tests') testImplementation project(path : ':spring-security-ldap', configuration : 'tests') testImplementation project(path : ':spring-security-oauth2-client', configuration : 'tests') testImplementation project(path : ':spring-security-oauth2-resource-server', configuration : 'tests') testImplementation project(path : ':saml2-service-provider-core', configuration : 'tests') testImplementation project(path : ':saml2-service-provider-opensaml4', configuration : 'tests') testImplementation project(path : ':spring-security-web', configuration : 'tests') testImplementation apachedsDependencies testImplementation powerMock2Dependencies testImplementation 'com.squareup.okhttp3:mockwebserver' testImplementation 'ch.qos.logback:logback-classic' testImplementation 'io.projectreactor.netty:reactor-netty' testImplementation 'io.rsocket:rsocket-transport-netty' testImplementation 'javax.annotation:jsr250-api:1.0' testImplementation 'javax.xml.bind:jaxb-api' testImplementation 'ldapsdk:ldapsdk:4.1' testImplementation('net.sourceforge.htmlunit:htmlunit') { exclude group: 'commons-logging', module: 'commons-logging' } testImplementation 'org.eclipse.persistence:javax.persistence' testImplementation 'org.hibernate:hibernate-entitymanager' testImplementation 'org.hsqldb:hsqldb' testImplementation ('org.openid4java:openid4java-nodeps') { exclude group: 'com.google.code.guice', module: 'guice' } testImplementation('org.seleniumhq.selenium:htmlunit-driver') { exclude group: 'commons-logging', module: 'commons-logging' } testImplementation('org.seleniumhq.selenium:selenium-java') { exclude group: 'commons-logging', module: 'commons-logging' exclude group: 'io.netty', module: 'netty' } testImplementation 'org.slf4j:jcl-over-slf4j' testImplementation 'org.springframework.ldap:spring-ldap-core' testImplementation 'org.springframework:spring-expression' testImplementation 'org.springframework:spring-jdbc' testImplementation 'org.springframework:spring-orm' testImplementation 'org.springframework:spring-tx' testImplementation ('org.springframework.data:spring-data-jpa') { exclude group: 'org.aspectj', module: 'aspectjrt' } testImplementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core' testImplementation 'org.jetbrains.kotlinx:kotlinx-coroutines-reactor' testRuntimeOnly 'org.hsqldb:hsqldb' } rncToXsd { rncDir = file('src/main/resources/org/springframework/security/config/') xsdDir = rncDir xslFile = new File(rncDir, 'spring-security.xsl') } tasks.withType(KotlinCompile).configureEach { kotlinOptions { jvmTarget = "1.8" freeCompilerArgs = ["-Xjsr305=strict"] } } build.dependsOn rncToXsd