-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathbuild.gradle
More file actions
87 lines (75 loc) · 2.57 KB
/
build.gradle
File metadata and controls
87 lines (75 loc) · 2.57 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
plugins {
id 'java'
id 'org.springframework.boot' version '3.5.9'
id 'io.spring.dependency-management' version '1.1.7'
id 'com.diffplug.spotless' version '7.0.2'
}
group = 'com.playprobie'
version = '0.0.1-SNAPSHOT'
description = 'Backend API Server for PlayProbie'
java {
toolchain {
languageVersion = JavaLanguageVersion.of(21)
}
}
configurations {
compileOnly {
extendsFrom annotationProcessor
}
}
repositories {
mavenCentral()
// Fallback repository for Maven Central 403 issues
maven {
url "https://repo1.maven.org/maven2/"
}
google()
}
dependencies {
// AWS SDK v2 BOM (버전 관리)
implementation platform('software.amazon.awssdk:bom:2.41.1')
implementation 'software.amazon.awssdk:s3'
implementation 'software.amazon.awssdk:sts'
implementation 'software.amazon.awssdk:gamelift'
implementation 'software.amazon.awssdk:gameliftstreams'
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
implementation 'org.springframework.boot:spring-boot-starter-web'
implementation 'org.springframework.boot:spring-boot-starter-actuator'
implementation 'org.springframework.boot:spring-boot-starter-validation'
implementation 'org.springframework.boot:spring-boot-starter-webflux'
implementation 'org.springframework.boot:spring-boot-starter-security'
implementation 'org.springdoc:springdoc-openapi-starter-webmvc-ui:2.8.14'
implementation 'io.jsonwebtoken:jjwt-api:0.12.6'
runtimeOnly 'io.jsonwebtoken:jjwt-impl:0.12.6'
runtimeOnly 'io.jsonwebtoken:jjwt-jackson:0.12.6'
// ShedLock for Distributed Scheduling
implementation 'net.javacrumbs.shedlock:shedlock-spring:6.2.0'
implementation 'net.javacrumbs.shedlock:shedlock-core:6.2.0'
implementation 'net.javacrumbs.shedlock:shedlock-provider-jdbc-template:6.2.0'
compileOnly 'org.projectlombok:lombok'
runtimeOnly 'com.h2database:h2'
runtimeOnly 'org.mariadb.jdbc:mariadb-java-client'
annotationProcessor 'org.projectlombok:lombok'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
testImplementation 'org.springframework.security:spring-security-test'
testImplementation 'io.projectreactor:reactor-test'
testImplementation 'org.awaitility:awaitility:4.2.0'
testRuntimeOnly 'org.junit.platform:junit-platform-launcher'
}
tasks.withType(Test) {
useJUnitPlatform()
jvmArgs '-XX:+EnableDynamicAgentLoading'
}
bootJar {
archiveFileName = 'app.jar'
}
// Spotless 설정 (Naver Eclipse Formatter 사용)
spotless {
java {
target 'src/*/java/**/*.java'
eclipse().configFile('tools/naver-eclipse-formatter.xml')
removeUnusedImports()
trimTrailingWhitespace()
endWithNewline()
}
}