build.gradle 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  1. plugins {
  2. id "java-gradle-plugin"
  3. id "java"
  4. id "groovy"
  5. }
  6. java {
  7. sourceCompatibility = JavaVersion.VERSION_17
  8. }
  9. repositories {
  10. gradlePluginPortal()
  11. mavenCentral()
  12. maven { url 'https://repo.spring.io/milestone' }
  13. }
  14. sourceSets {
  15. main {
  16. java {
  17. srcDirs = []
  18. }
  19. groovy {
  20. srcDirs += ["src/main/java"]
  21. }
  22. }
  23. }
  24. gradlePlugin {
  25. plugins {
  26. trang {
  27. id = "trang"
  28. implementationClass = "trang.TrangPlugin"
  29. }
  30. locks {
  31. id = "locks"
  32. implementationClass = "lock.GlobalLockPlugin"
  33. }
  34. managementConfiguration {
  35. id = "io.spring.convention.management-configuration"
  36. implementationClass = "io.spring.gradle.convention.ManagementConfigurationPlugin"
  37. }
  38. s101 {
  39. id = "s101"
  40. implementationClass = "s101.S101Plugin"
  41. }
  42. verifyDependenciesVersions {
  43. id = "org.springframework.security.versions.verify-dependencies-versions"
  44. implementationClass = "org.springframework.security.convention.versions.VerifyDependenciesVersionsPlugin"
  45. }
  46. checkExpectedBranchVersion {
  47. id = "org.springframework.security.check-expected-branch-version"
  48. implementationClass = "org.springframework.security.CheckExpectedBranchVersionPlugin"
  49. }
  50. }
  51. }
  52. configurations {
  53. implementation {
  54. exclude module: 'groovy-all'
  55. }
  56. }
  57. dependencies {
  58. implementation platform(libs.io.projectreactor.reactor.bom)
  59. implementation libs.com.google.code.gson.gson
  60. implementation libs.com.thaiopensource.trag
  61. implementation libs.net.sourceforge.saxon.saxon
  62. implementation libs.org.yaml.snakeyaml
  63. implementation localGroovy()
  64. implementation libs.io.github.gradle.nexus.publish.plugin
  65. implementation 'io.projectreactor:reactor-core'
  66. implementation libs.org.gretty.gretty
  67. implementation libs.com.github.ben.manes.gradle.versions.plugin
  68. implementation libs.com.github.spullara.mustache.java.compiler
  69. implementation libs.io.spring.javaformat.spring.javaformat.gradle.plugin
  70. implementation libs.io.spring.nohttp.nohttp.gradle
  71. implementation (libs.net.sourceforge.htmlunit) {
  72. exclude group: 'org.eclipse.jetty.websocket', module: 'websocket-client'
  73. }
  74. implementation libs.org.hidetake.gradle.ssh.plugin
  75. implementation libs.org.jfrog.buildinfo.build.info.extractor.gradle
  76. implementation libs.org.sonarsource.scanner.gradle.sonarqube.gradle.plugin
  77. implementation libs.com.squareup.okhttp3.okhttp
  78. implementation libs.io.spring.security.release.plugin
  79. testImplementation platform(libs.org.junit.junit.bom)
  80. testImplementation platform(libs.org.mockito.mockito.bom)
  81. testImplementation "org.junit.jupiter:junit-jupiter-api"
  82. testImplementation "org.junit.jupiter:junit-jupiter-params"
  83. testImplementation "org.junit.jupiter:junit-jupiter-engine"
  84. testImplementation libs.org.apache.commons.commons.io
  85. testImplementation libs.org.assertj.assertj.core
  86. testImplementation 'org.mockito:mockito-core'
  87. testImplementation 'org.mockito:mockito-junit-jupiter'
  88. testImplementation libs.com.squareup.okhttp3.mockwebserver
  89. }
  90. tasks.named('test', Test).configure {
  91. onlyIf { !project.hasProperty("buildSrc.skipTests") }
  92. useJUnitPlatform()
  93. jvmArgs(
  94. '--add-opens', 'java.base/java.lang=ALL-UNNAMED',
  95. '--add-opens', 'java.base/java.util=ALL-UNNAMED'
  96. )
  97. }