build.gradle 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  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-security'
  23. implementation 'org.springframework.security:spring-security-crypto:6.2.1'
  24. implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
  25. implementation 'org.springframework.boot:spring-boot-starter-graphql'
  26. implementation 'org.springframework.boot:spring-boot-starter-web'
  27. implementation 'org.springframework.boot:spring-boot-starter-web-services'
  28. compileOnly 'org.projectlombok:lombok'
  29. developmentOnly 'org.springframework.boot:spring-boot-devtools'
  30. annotationProcessor 'org.projectlombok:lombok'
  31. testImplementation 'org.springframework.boot:spring-boot-starter-test'
  32. testImplementation 'org.springframework:spring-webflux'
  33. testImplementation 'org.springframework.graphql:spring-graphql-test'
  34. // log4j2
  35. implementation 'org.springframework.boot:spring-boot-starter-log4j2'
  36. //thymeleaf
  37. implementation 'org.springframework.boot:spring-boot-starter-thymeleaf'
  38. implementation 'nz.net.ultraq.thymeleaf:thymeleaf-layout-dialect'
  39. // mssql
  40. //implementation 'com.microsoft.sqlserver:mssql-jdbc:9.4.0.jre8'
  41. //mysql
  42. implementation 'mysql:mysql-connector-java:8.0.32'
  43. //queryDSL
  44. implementation 'com.querydsl:querydsl-jpa:5.0.0:jakarta'
  45. annotationProcessor "com.querydsl:querydsl-apt:5.0.0:jakarta"
  46. annotationProcessor "jakarta.annotation:jakarta.annotation-api"
  47. annotationProcessor "jakarta.persistence:jakarta.persistence-api"
  48. // WebClient
  49. implementation 'org.springframework.boot:spring-boot-starter-webflux'
  50. /** Querydsl 설정부 **/
  51. def generated = 'src/main/generated'
  52. //querydsl QClass 파일 생성 위치를 지정
  53. tasks.withType(JavaCompile) {
  54. options.getGeneratedSourceOutputDirectory().set(file(generated))
  55. }
  56. //java source set 에 querydsl QClass 위치 추가
  57. sourceSets {
  58. main.java.srcDirs += [ generated ]
  59. }
  60. //gradle clean 시에 QClass 디렉토리 삭제
  61. clean {
  62. delete file(generated)
  63. }
  64. }
  65. tasks.named('test') {
  66. useJUnitPlatform()
  67. }