build.gradle.kts 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  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. testImplementation("org.javassist:javassist:3.28.0-GA")
  30. }
  31. val latestDepTest = findProperty("testLatestDeps") as Boolean
  32. testing {
  33. suites {
  34. val version5Test by registering(JvmTestSuite::class) {
  35. dependencies {
  36. sources {
  37. java {
  38. setSrcDirs(listOf("src/test/java"))
  39. }
  40. resources {
  41. setSrcDirs(listOf("src/test/resources"))
  42. }
  43. }
  44. implementation("com.h2database:h2:1.4.197")
  45. implementation("javax.xml.bind:jaxb-api:2.2.11")
  46. implementation("com.sun.xml.bind:jaxb-core:2.2.11")
  47. implementation("com.sun.xml.bind:jaxb-impl:2.2.11")
  48. implementation("javax.activation:activation:1.1.1")
  49. implementation("org.hsqldb:hsqldb:2.0.0")
  50. if (latestDepTest) {
  51. implementation("org.hibernate:hibernate-core:5.0.0.Final")
  52. implementation("org.hibernate:hibernate-entitymanager:5.0.0.Final")
  53. implementation("org.springframework.data:spring-data-jpa:2.3.0.RELEASE")
  54. } else {
  55. implementation("org.hibernate:hibernate-core:5.+")
  56. implementation("org.hibernate:hibernate-entitymanager:5.+")
  57. implementation("org.springframework.data:spring-data-jpa:(2.4.0,3)")
  58. }
  59. }
  60. }
  61. }
  62. }
  63. tasks.withType<Test>().configureEach {
  64. // required on jdk17
  65. jvmArgs("--add-opens=java.base/java.lang=ALL-UNNAMED")
  66. jvmArgs("--add-opens=java.base/java.lang.invoke=ALL-UNNAMED")
  67. jvmArgs("-XX:+IgnoreUnrecognizedVMOptions")
  68. // TODO run tests both with and without experimental span attributes
  69. jvmArgs("-Dotel.instrumentation.hibernate.experimental-span-attributes=true")
  70. }
  71. tasks {
  72. check {
  73. dependsOn(testing.suites)
  74. }
  75. }