plugins { id 'java' id 'org.springframework.boot' version '3.4.1' id 'io.spring.dependency-management' version '1.1.7' } group = 'com.company' version = '1.0.0-SNAPSHOT' java { toolchain { languageVersion = JavaLanguageVersion.of(21) } } configurations { compileOnly { extendsFrom annotationProcessor } } repositories { mavenCentral() } ext { set('springCloudVersion', '2024.0.0') set('mybatisVersion', '3.0.4') set('jjwtVersion', '0.12.6') } dependencies { // Web implementation 'org.springframework.boot:spring-boot-starter-web' // Actuator (헬스체크) implementation 'org.springframework.boot:spring-boot-starter-actuator' // Security implementation 'org.springframework.boot:spring-boot-starter-security' // JWT implementation "io.jsonwebtoken:jjwt-api:${jjwtVersion}" runtimeOnly "io.jsonwebtoken:jjwt-impl:${jjwtVersion}" runtimeOnly "io.jsonwebtoken:jjwt-jackson:${jjwtVersion}" // MyBatis implementation "org.mybatis.spring.boot:mybatis-spring-boot-starter:${mybatisVersion}" // MS SQL Server JDBC (현재 사용) - 9.4.1: encrypt=false 시 TLS 미사용 (TLS1.0 서버 호환) runtimeOnly 'com.microsoft.sqlserver:mssql-jdbc:9.4.1.jre11' // MariaDB JDBC (추후 전환용) runtimeOnly 'org.mariadb.jdbc:mariadb-java-client' // Redis implementation 'org.springframework.boot:spring-boot-starter-data-redis' // RabbitMQ implementation 'org.springframework.boot:spring-boot-starter-amqp' // Validation implementation 'org.springframework.boot:spring-boot-starter-validation' // Lombok compileOnly 'org.projectlombok:lombok' annotationProcessor 'org.projectlombok:lombok' // Excel (Apache POI) implementation 'org.apache.poi:poi-ooxml:5.3.0' // Test testImplementation 'org.springframework.boot:spring-boot-starter-test' testImplementation 'org.springframework.security:spring-security-test' testImplementation 'org.mybatis.spring.boot:mybatis-spring-boot-starter-test:3.0.4' } dependencyManagement { imports { mavenBom "org.springframework.cloud:spring-cloud-dependencies:${springCloudVersion}" } } tasks.named('test') { useJUnitPlatform() } bootRun { args '--spring.profiles.active=mssql,local' jvmArgs "-Djava.security.properties=${projectDir}/tls-local.security" }