Files
blog-backend/build.gradle.kts
pwy3282040@msecure.co 47135829f7 Docs: README 및 minio 추가
README.md 파일 작성.
minio 사용을 위한 의존성 추가, 환경변수 수정.
기타 주석 정리.
2025-12-26 10:59:38 +09:00

77 lines
2.4 KiB
Kotlin

plugins {
kotlin("jvm") version "1.9.25"
kotlin("plugin.spring") version "1.9.25"
kotlin("plugin.jpa") version "1.9.25"
kotlin("kapt") version "1.9.25"
id("org.springframework.boot") version "3.5.9"
id("io.spring.dependency-management") version "1.1.7"
}
group = "me.wypark"
version = "0.0.1-SNAPSHOT"
description = "blog-backend"
java {
toolchain {
languageVersion = JavaLanguageVersion.of(21) // Java 21 굿!
}
}
repositories {
mavenCentral()
}
val springCloudAwsVersion = "3.2.1"
dependencies {
// 1. Standard Spring Boot Starters
implementation("org.springframework.boot:spring-boot-starter-data-jpa")
implementation("org.springframework.boot:spring-boot-starter-security")
implementation("org.springframework.boot:spring-boot-starter-web")
implementation("org.springframework.boot:spring-boot-starter-data-redis")
implementation("org.springframework.boot:spring-boot-starter-validation")
// 2. Kotlin Modules
implementation("com.fasterxml.jackson.module:jackson-module-kotlin")
implementation("org.jetbrains.kotlin:kotlin-reflect")
// 3. Database Drivers
runtimeOnly("org.postgresql:postgresql")
// 4. AWS S3 / MinIO
implementation("io.awspring.cloud:spring-cloud-aws-starter-s3:$springCloudAwsVersion")
// 5. QueryDSL
implementation("com.querydsl:querydsl-jpa:5.1.0:jakarta")
kapt("com.querydsl:querydsl-apt:5.1.0:jakarta")
kapt("jakarta.persistence:jakarta.persistence-api")
kapt("jakarta.annotation:jakarta.annotation-api")
// 6. JWT (0.12.x)
implementation("io.jsonwebtoken:jjwt-api:0.12.3")
runtimeOnly("io.jsonwebtoken:jjwt-impl:0.12.3")
runtimeOnly("io.jsonwebtoken:jjwt-jackson:0.12.3")
// 7. Test & Dev
developmentOnly("org.springframework.boot:spring-boot-devtools")
testImplementation("org.springframework.boot:spring-boot-starter-test")
testImplementation("org.jetbrains.kotlin:kotlin-test-junit5")
testImplementation("org.springframework.security:spring-security-test")
testRuntimeOnly("org.junit.platform:junit-platform-launcher")
}
kotlin {
compilerOptions {
freeCompilerArgs.addAll("-Xjsr305=strict")
}
}
allOpen {
annotation("jakarta.persistence.Entity")
annotation("jakarta.persistence.MappedSuperclass")
annotation("jakarta.persistence.Embeddable")
}
tasks.withType<Test> {
useJUnitPlatform()
}