2
0

spring-security-config.gradle 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
  2. apply plugin: 'io.spring.convention.spring-module'
  3. apply plugin: 'trang'
  4. apply plugin: 'kotlin'
  5. repositories {
  6. maven { url "https://build.shibboleth.net/nexus/content/repositories/releases/" }
  7. }
  8. dependencies {
  9. management platform(project(":spring-security-dependencies"))
  10. // NB: Don't add other compile time dependencies to the config module as this breaks tooling
  11. api project(':spring-security-core')
  12. api 'org.springframework:spring-aop'
  13. api 'org.springframework:spring-beans'
  14. api 'org.springframework:spring-context'
  15. api 'org.springframework:spring-core'
  16. optional project(':spring-security-ldap')
  17. optional project(':spring-security-messaging')
  18. optional project(':saml2-service-provider-opensaml3')
  19. optional project(':saml2-service-provider-opensaml4')
  20. optional project(':spring-security-oauth2-client')
  21. optional project(':spring-security-oauth2-jose')
  22. optional project(':spring-security-oauth2-resource-server')
  23. optional project(':spring-security-openid')
  24. optional project(':spring-security-rsocket')
  25. optional project(':spring-security-web')
  26. optional 'io.projectreactor:reactor-core'
  27. optional 'org.aspectj:aspectjweaver'
  28. optional 'org.springframework:spring-jdbc'
  29. optional 'org.springframework:spring-messaging'
  30. optional 'org.springframework:spring-tx'
  31. optional 'org.springframework:spring-webmvc'
  32. optional'org.springframework:spring-web'
  33. optional'org.springframework:spring-webflux'
  34. optional'org.springframework:spring-websocket'
  35. optional 'org.jetbrains.kotlin:kotlin-reflect'
  36. optional 'org.jetbrains.kotlin:kotlin-stdlib-jdk8'
  37. provided 'javax.servlet:javax.servlet-api'
  38. testImplementation project(':spring-security-aspects')
  39. testImplementation project(':spring-security-cas')
  40. testImplementation project(':spring-security-test')
  41. testImplementation project(path : ':spring-security-core', configuration : 'tests')
  42. testImplementation project(path : ':spring-security-ldap', configuration : 'tests')
  43. testImplementation project(path : ':spring-security-oauth2-client', configuration : 'tests')
  44. testImplementation project(path : ':spring-security-oauth2-resource-server', configuration : 'tests')
  45. testImplementation project(path : ':saml2-service-provider-core', configuration : 'tests')
  46. testImplementation project(path : ':saml2-service-provider-opensaml4', configuration : 'tests')
  47. testImplementation project(path : ':spring-security-web', configuration : 'tests')
  48. testImplementation apachedsDependencies
  49. testImplementation powerMock2Dependencies
  50. testImplementation 'com.squareup.okhttp3:mockwebserver'
  51. testImplementation 'ch.qos.logback:logback-classic'
  52. testImplementation 'io.projectreactor.netty:reactor-netty'
  53. testImplementation 'io.rsocket:rsocket-transport-netty'
  54. testImplementation 'javax.annotation:jsr250-api:1.0'
  55. testImplementation 'javax.xml.bind:jaxb-api'
  56. testImplementation 'ldapsdk:ldapsdk:4.1'
  57. testImplementation('net.sourceforge.htmlunit:htmlunit') {
  58. exclude group: 'commons-logging', module: 'commons-logging'
  59. }
  60. testImplementation 'org.eclipse.persistence:javax.persistence'
  61. testImplementation 'org.hibernate:hibernate-entitymanager'
  62. testImplementation 'org.hsqldb:hsqldb'
  63. testImplementation ('org.openid4java:openid4java-nodeps') {
  64. exclude group: 'com.google.code.guice', module: 'guice'
  65. }
  66. testImplementation('org.seleniumhq.selenium:htmlunit-driver') {
  67. exclude group: 'commons-logging', module: 'commons-logging'
  68. }
  69. testImplementation('org.seleniumhq.selenium:selenium-java') {
  70. exclude group: 'commons-logging', module: 'commons-logging'
  71. exclude group: 'io.netty', module: 'netty'
  72. }
  73. testImplementation 'org.slf4j:jcl-over-slf4j'
  74. testImplementation 'org.springframework.ldap:spring-ldap-core'
  75. testImplementation 'org.springframework:spring-expression'
  76. testImplementation 'org.springframework:spring-jdbc'
  77. testImplementation 'org.springframework:spring-orm'
  78. testImplementation 'org.springframework:spring-tx'
  79. testImplementation ('org.springframework.data:spring-data-jpa') {
  80. exclude group: 'org.aspectj', module: 'aspectjrt'
  81. }
  82. testImplementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core'
  83. testImplementation 'org.jetbrains.kotlinx:kotlinx-coroutines-reactor'
  84. testImplementation 'io.mockk:mockk'
  85. testRuntimeOnly 'org.hsqldb:hsqldb'
  86. }
  87. rncToXsd {
  88. rncDir = file('src/main/resources/org/springframework/security/config/')
  89. xsdDir = rncDir
  90. xslFile = new File(rncDir, 'spring-security.xsl')
  91. }
  92. tasks.withType(KotlinCompile).configureEach {
  93. kotlinOptions {
  94. apiVersion = "1.4"
  95. freeCompilerArgs = ["-Xjsr305=strict", "-Xsuppress-version-warnings"]
  96. jvmTarget = "1.8"
  97. languageVersion = "1.4"
  98. }
  99. }
  100. build.dependsOn rncToXsd