build.gradle 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. plugins {
  2. id 'java'
  3. id 'org.springframework.boot' version '3.2.3'
  4. id 'io.spring.dependency-management' version '1.1.4'
  5. }
  6. group = 'com.example'
  7. version = '0.0.1-SNAPSHOT'
  8. java {
  9. sourceCompatibility = '17'
  10. }
  11. configurations {
  12. compileOnly {
  13. extendsFrom annotationProcessor
  14. }
  15. all*.exclude module: 'spring-boot-starter-logging'
  16. }
  17. repositories {
  18. mavenCentral()
  19. }
  20. dependencies {
  21. implementation 'org.springframework.boot:spring-boot-starter-data-jdbc'
  22. implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
  23. implementation 'org.springframework.boot:spring-boot-starter-graphql'
  24. implementation 'org.springframework.boot:spring-boot-starter-web'
  25. implementation 'org.springframework.boot:spring-boot-starter-web-services'
  26. compileOnly 'org.projectlombok:lombok'
  27. developmentOnly 'org.springframework.boot:spring-boot-devtools'
  28. annotationProcessor 'org.projectlombok:lombok'
  29. testImplementation 'org.springframework.boot:spring-boot-starter-test'
  30. testImplementation 'org.springframework:spring-webflux'
  31. testImplementation 'org.springframework.graphql:spring-graphql-test'
  32. // log4j2
  33. implementation 'org.springframework.boot:spring-boot-starter-log4j2'
  34. //thymeleaf
  35. implementation 'org.springframework.boot:spring-boot-starter-thymeleaf'
  36. implementation 'nz.net.ultraq.thymeleaf:thymeleaf-layout-dialect'
  37. // mssql
  38. //implementation 'com.microsoft.sqlserver:mssql-jdbc:9.4.0.jre8'
  39. //mysql
  40. implementation 'mysql:mysql-connector-java:8.0.32'
  41. //queryDSL
  42. implementation 'com.querydsl:querydsl-jpa:5.0.0:jakarta'
  43. annotationProcessor "com.querydsl:querydsl-apt:5.0.0:jakarta"
  44. annotationProcessor "jakarta.annotation:jakarta.annotation-api"
  45. annotationProcessor "jakarta.persistence:jakarta.persistence-api"
  46. // WebClient
  47. implementation 'org.springframework.boot:spring-boot-starter-webflux'
  48. /** Querydsl 설정부 **/
  49. def generated = 'src/main/generated'
  50. //querydsl QClass 파일 생성 위치를 지정
  51. tasks.withType(JavaCompile) {
  52. options.getGeneratedSourceOutputDirectory().set(file(generated))
  53. }
  54. //java source set 에 querydsl QClass 위치 추가
  55. sourceSets {
  56. main.java.srcDirs += [ generated ]
  57. }
  58. //gradle clean 시에 QClass 디렉토리 삭제
  59. clean {
  60. delete file(generated)
  61. }
  62. }
  63. tasks.named('test') {
  64. useJUnitPlatform()
  65. }