build.gradle 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. import java.time.Instant
  2. plugins {
  3. id 'java'
  4. id 'application'
  5. }
  6. group projectGroup
  7. version projectVersion
  8. application {
  9. mainClass = 'cz.senslog.telemetry.app.Main'
  10. }
  11. repositories {
  12. mavenLocal()
  13. mavenCentral()
  14. }
  15. java {
  16. sourceCompatibility = JavaVersion.VERSION_17
  17. targetCompatibility = JavaVersion.VERSION_17
  18. }
  19. build {
  20. doLast {
  21. ant.propertyfile(file: "gradle.properties") {
  22. entry( key: "buildVersion", value: Instant.now().getEpochSecond())
  23. }
  24. }
  25. }
  26. jar {
  27. manifest {
  28. attributes 'Implementation-Title': 'SensLog Telemetry',
  29. 'Implementation-Version': version,
  30. 'Main-Class': 'cz.senslog.telemetry.app.Main'
  31. }
  32. }
  33. test {
  34. useJUnitPlatform()
  35. }
  36. dependencies {
  37. implementation 'org.apache.logging.log4j:log4j-api:2.20.0'
  38. implementation 'org.apache.logging.log4j:log4j-core:2.20.0'
  39. implementation 'io.vertx:vertx-core:4.4.0'
  40. implementation 'io.vertx:vertx-web:4.4.0'
  41. implementation 'io.vertx:vertx-web-openapi:4.4.0'
  42. implementation 'io.vertx:vertx-pg-client:4.4.0'
  43. implementation 'org.postgresql:postgresql:42.6.0'
  44. implementation 'com.ongres.scram:client:2.1'
  45. testImplementation 'org.junit.jupiter:junit-jupiter-api:5.8.1'
  46. testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.8.1'
  47. testImplementation 'org.mockito:mockito-core:5.3.1'
  48. testImplementation 'io.vertx:vertx-junit5:4.4.0'
  49. testImplementation 'org.assertj:assertj-core:3.24.2'
  50. testImplementation 'org.openapi4j:openapi-parser:1.0.7'
  51. testImplementation 'org.openapi4j:openapi-schema-validator:1.0.7'
  52. }