You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
76 lines
2.2 KiB
76 lines
2.2 KiB
plugins {
|
|
// Spring Boot
|
|
id("org.springframework.boot") version "3.5.3"
|
|
// Spring 의존성 관리(BOM)
|
|
id("io.spring.dependency-management") version "1.1.7"
|
|
|
|
// Java 라이브러리, (필요하면) Maven Publish
|
|
`java-library`
|
|
`maven-publish`
|
|
}
|
|
|
|
group = "kr.re.etri"
|
|
version = "0.0.1-SNAPSHOT"
|
|
description = "spring-security-refresh-token"
|
|
|
|
java {
|
|
toolchain {
|
|
languageVersion.set(JavaLanguageVersion.of(17))
|
|
}
|
|
}
|
|
|
|
repositories {
|
|
mavenCentral()
|
|
}
|
|
|
|
dependencies {
|
|
// Spring Boot 스타터들
|
|
implementation("org.springframework.boot:spring-boot-starter-web")
|
|
implementation("org.springframework.boot:spring-boot-starter-web")
|
|
implementation("org.springframework.boot:spring-boot-starter-data-jpa")
|
|
implementation("org.springframework.boot:spring-boot-starter-security")
|
|
implementation("org.springframework.boot:spring-boot-starter-validation")
|
|
|
|
// JWT
|
|
implementation("io.jsonwebtoken:jjwt-api:0.11.5")
|
|
runtimeOnly("io.jsonwebtoken:jjwt-impl:0.11.5")
|
|
runtimeOnly("io.jsonwebtoken:jjwt-jackson:0.11.5")
|
|
|
|
// OpenAPI UI
|
|
implementation("org.springdoc:springdoc-openapi-starter-webmvc-ui:2.8.9")
|
|
|
|
// MariaDB 드라이버
|
|
runtimeOnly("org.mariadb.jdbc:mariadb-java-client:3.1.4")
|
|
|
|
// Lombok (선택)
|
|
compileOnly("org.projectlombok:lombok:1.18.38")
|
|
annotationProcessor("org.projectlombok:lombok:1.18.38")
|
|
testCompileOnly("org.projectlombok:lombok:1.18.38")
|
|
testAnnotationProcessor("org.projectlombok:lombok:1.18.38")
|
|
|
|
// 테스트
|
|
testImplementation("org.springframework.boot:spring-boot-starter-test")
|
|
testImplementation("org.springframework.security:spring-security-test")
|
|
}
|
|
|
|
// Java 컴파일 인코딩 및 파라미터 리플렉션 지원
|
|
tasks.withType<JavaCompile> {
|
|
options.encoding = "UTF-8"
|
|
options.compilerArgs.add("-parameters")
|
|
}
|
|
|
|
// Javadoc 인코딩
|
|
tasks.withType<Javadoc> {
|
|
options.encoding = "UTF-8"
|
|
}
|
|
|
|
// (선택) Maven Publish 설정
|
|
publishing {
|
|
publications.create<MavenPublication>("maven") {
|
|
from(components["java"])
|
|
groupId = project.group.toString()
|
|
artifactId = project.name
|
|
version = project.version.toString()
|
|
}
|
|
}
|