build.gradle.kts 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. plugins {
  2. id("otel.javaagent-instrumentation")
  3. }
  4. muzzle {
  5. pass {
  6. group.set("org.hibernate")
  7. module.set("hibernate-core")
  8. versions.set("[4.0.0.Final,6)")
  9. assertInverse.set(true)
  10. }
  11. }
  12. dependencies {
  13. compileOnly("org.hibernate:hibernate-core:4.0.0.Final")
  14. implementation(project(":instrumentation:hibernate:hibernate-common:javaagent"))
  15. testInstrumentation(project(":instrumentation:jdbc:javaagent"))
  16. // Added to ensure cross compatibility:
  17. testInstrumentation(project(":instrumentation:hibernate:hibernate-3.3:javaagent"))
  18. testInstrumentation(project(":instrumentation:hibernate:hibernate-procedure-call-4.3:javaagent"))
  19. testImplementation("com.h2database:h2:1.4.197")
  20. testImplementation("javax.xml.bind:jaxb-api:2.2.11")
  21. testImplementation("com.sun.xml.bind:jaxb-core:2.2.11")
  22. testImplementation("com.sun.xml.bind:jaxb-impl:2.2.11")
  23. testImplementation("javax.activation:activation:1.1.1")
  24. testImplementation("org.hsqldb:hsqldb:2.0.0")
  25. // First version to work with Java 14
  26. testImplementation("org.springframework.data:spring-data-jpa:1.8.0.RELEASE")
  27. testImplementation("org.hibernate:hibernate-core:4.0.0.Final")
  28. testImplementation("org.hibernate:hibernate-entitymanager:4.0.0.Final")
  29. }
  30. val latestDepTest = findProperty("testLatestDeps") as Boolean
  31. testing {
  32. suites {
  33. val version5Test by registering(JvmTestSuite::class) {
  34. dependencies {
  35. sources {
  36. groovy {
  37. setSrcDirs(listOf("src/test/groovy"))
  38. }
  39. java {
  40. setSrcDirs(listOf("src/test/java"))
  41. }
  42. resources {
  43. setSrcDirs(listOf("src/test/resources"))
  44. }
  45. }
  46. implementation("com.h2database:h2:1.4.197")
  47. implementation("javax.xml.bind:jaxb-api:2.2.11")
  48. implementation("com.sun.xml.bind:jaxb-core:2.2.11")
  49. implementation("com.sun.xml.bind:jaxb-impl:2.2.11")
  50. implementation("javax.activation:activation:1.1.1")
  51. implementation("org.hsqldb:hsqldb:2.0.0")
  52. if (latestDepTest) {
  53. implementation("org.hibernate:hibernate-core:5.0.0.Final")
  54. implementation("org.hibernate:hibernate-entitymanager:5.0.0.Final")
  55. implementation("org.springframework.data:spring-data-jpa:2.3.0.RELEASE")
  56. } else {
  57. implementation("org.hibernate:hibernate-core:5.+")
  58. implementation("org.hibernate:hibernate-entitymanager:5.+")
  59. implementation("org.springframework.data:spring-data-jpa:(2.4.0,3)")
  60. }
  61. }
  62. }
  63. }
  64. }
  65. tasks.withType<Test>().configureEach {
  66. // required on jdk17
  67. jvmArgs("--add-opens=java.base/java.lang=ALL-UNNAMED")
  68. jvmArgs("--add-opens=java.base/java.lang.invoke=ALL-UNNAMED")
  69. jvmArgs("-XX:+IgnoreUnrecognizedVMOptions")
  70. // TODO run tests both with and without experimental span attributes
  71. jvmArgs("-Dotel.instrumentation.hibernate.experimental-span-attributes=true")
  72. }
  73. tasks {
  74. check {
  75. dependsOn(testing.suites)
  76. }
  77. }