11plugins {
2- id ' java'
3- id ' jacoco'
4- id ' org.springframework.boot' version ' 3.3.7'
5- id ' io.spring.dependency-management' version ' 1.1.7'
6- id ' com.google.cloud.tools.jib' version ' 3.4.4'
2+ id ' java'
3+ id ' jacoco'
4+ id ' org.springframework.boot' version ' 3.3.7'
5+ id ' io.spring.dependency-management' version ' 1.1.7'
6+ id ' com.google.cloud.tools.jib' version ' 3.4.4'
77}
88
99group = ' com.team-nebula'
1010version = ' 0.0.1-SNAPSHOT'
1111
1212java {
13- toolchain {
14- languageVersion = JavaLanguageVersion . of(17 )
15- }
13+ toolchain {
14+ languageVersion = JavaLanguageVersion . of(17 )
15+ }
1616}
1717
1818configurations {
19- compileOnly {
20- extendsFrom annotationProcessor
21- }
19+ compileOnly {
20+ extendsFrom annotationProcessor
21+ }
2222}
2323
2424repositories {
25- mavenCentral()
25+ mavenCentral()
2626}
2727
2828dependencies {
29- implementation ' org.springframework.boot:spring-boot-starter-data-jpa'
30- implementation ' org.springframework.boot:spring-boot-starter-web'
31- implementation ' org.springdoc:springdoc-openapi-starter-webmvc-ui:2.0.4' // Swagger
32- implementation ' org.springframework.boot:spring-boot-starter-data-neo4j' // Neo4j
33- implementation ' org.springframework.boot:spring-boot-starter-security' // Spring Security
34- implementation ' org.springframework.boot:spring-boot-starter-oauth2-client' // OAuth2
35-
36- // JWT
37- implementation ' io.jsonwebtoken:jjwt-api:0.12.3'
38- implementation ' io.jsonwebtoken:jjwt-impl:0.12.3'
39- implementation ' io.jsonwebtoken:jjwt-jackson:0.12.3'
40-
41- // AWS S3
42- implementation ' com.amazonaws:aws-java-sdk-s3:1.12.300'
43- implementation ' org.springframework.cloud:spring-cloud-starter-aws:2.2.6.RELEASE'
44-
45- // Logback
46- implementation ' org.springframework.boot:spring-boot-starter-logging'
47-
48- // Apache Commons IO
49- implementation ' commons-io:commons-io:2.18.0'
50-
51- compileOnly ' org.projectlombok:lombok'
52- developmentOnly ' org.springframework.boot:spring-boot-devtools'
53- runtimeOnly ' com.mysql:mysql-connector-j'
54- runtimeOnly ' com.h2database:h2'
55- annotationProcessor ' org.springframework.boot:spring-boot-configuration-processor'
56- annotationProcessor ' org.projectlombok:lombok'
57- testImplementation ' org.springframework.boot:spring-boot-starter-test'
58- testRuntimeOnly ' org.junit.platform:junit-platform-launcher'
59- implementation ' com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.15.0'
60- implementation ' org.springframework.boot:spring-boot-starter-webflux'
61- implementation ' org.springframework.boot:spring-boot-starter-amqp'
29+ implementation ' org.springframework.boot:spring-boot-starter-data-jpa'
30+ implementation ' org.springframework.boot:spring-boot-starter-web'
31+ implementation ' org.springdoc:springdoc-openapi-starter-webmvc-ui:2.0.4' // Swagger
32+ implementation ' org.springframework.boot:spring-boot-starter-data-neo4j' // Neo4j
33+ implementation ' org.springframework.boot:spring-boot-starter-security' // Spring Security
34+ implementation ' org.springframework.boot:spring-boot-starter-oauth2-client' // OAuth2
35+
36+ // JWT
37+ implementation ' io.jsonwebtoken:jjwt-api:0.12.3'
38+ implementation ' io.jsonwebtoken:jjwt-impl:0.12.3'
39+ implementation ' io.jsonwebtoken:jjwt-jackson:0.12.3'
40+
41+ // AWS S3
42+ implementation ' com.amazonaws:aws-java-sdk-s3:1.12.300'
43+ implementation ' org.springframework.cloud:spring-cloud-starter-aws:2.2.6.RELEASE'
44+
45+ // Logback
46+ implementation ' org.springframework.boot:spring-boot-starter-logging'
47+
48+ // Apache Commons IO
49+ implementation ' commons-io:commons-io:2.18.0'
50+
51+ // WebFlux
52+ implementation ' org.springframework.boot:spring-boot-starter-webflux'
53+
54+ compileOnly ' org.projectlombok:lombok'
55+ developmentOnly ' org.springframework.boot:spring-boot-devtools'
56+ runtimeOnly ' com.mysql:mysql-connector-j'
57+ runtimeOnly ' com.h2database:h2'
58+ annotationProcessor ' org.springframework.boot:spring-boot-configuration-processor'
59+ annotationProcessor ' org.projectlombok:lombok'
60+ testImplementation ' org.springframework.boot:spring-boot-starter-test'
61+ testRuntimeOnly ' org.junit.platform:junit-platform-launcher'
62+ implementation ' com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.15.0'
63+ implementation ' org.springframework.boot:spring-boot-starter-webflux'
64+ implementation ' org.springframework.boot:spring-boot-starter-amqp'
6265}
6366
6467tasks. named(' test' ) {
65- useJUnitPlatform()
66- finalizedBy ' jacocoTestReport'
68+ useJUnitPlatform()
69+ finalizedBy ' jacocoTestReport'
6770}
6871
6972tasks. named(' check' ) {
70- dependsOn ' jacocoTestCoverageVerification'
73+ dependsOn ' jacocoTestCoverageVerification'
7174}
7275
7376jacoco {
74- toolVersion = " 0.8.11"
77+ toolVersion = " 0.8.11"
7578}
7679
7780jacocoTestReport {
78- dependsOn test
79- reports {
80- xml. required = true
81- html. required = true
82- }
81+ dependsOn test
82+ reports {
83+ xml. required = true
84+ html. required = true
85+ }
8386}
8487
8588jacocoTestCoverageVerification {
86- afterEvaluate {
87- classDirectories. setFrom(files(classDirectories. files. collect {
88- fileTree(dir : it, exclude : [
89- ' com/team_nebula/nebula/NebulaApplication.class'
90- ])
91- }))
92- }
93- violationRules {
94- rule {
95- enabled = true
96- element = ' CLASS'
97-
98- limit {
99- counter = ' LINE'
100- value = ' COVEREDRATIO'
101- minimum = 0.80
102- }
103- limit {
104- counter = ' BRANCH'
105- value = ' COVEREDRATIO'
106- minimum = 0.70
107- }
108- limit {
109- counter = ' LINE'
110- value = ' TOTALCOUNT'
111- maximum = 200
112- }
113- }
114- }
89+ afterEvaluate {
90+ classDirectories. setFrom(files(classDirectories. files. collect {
91+ fileTree(dir : it, exclude : [
92+ ' com/team_nebula/nebula/NebulaApplication.class'
93+ ])
94+ }))
95+ }
96+ violationRules {
97+ rule {
98+ enabled = true
99+ element = ' CLASS'
100+
101+ limit {
102+ counter = ' LINE'
103+ value = ' COVEREDRATIO'
104+ minimum = 0.80
105+ }
106+ limit {
107+ counter = ' BRANCH'
108+ value = ' COVEREDRATIO'
109+ minimum = 0.70
110+ }
111+ limit {
112+ counter = ' LINE'
113+ value = ' TOTALCOUNT'
114+ maximum = 200
115+ }
116+ }
117+ }
115118}
116119
117120jib {
118- from {
119- image = ' openjdk:17-alpine'
120- platforms {
121- platform {
122- architecture = ' amd64'
123- os = ' linux'
124- }
125- }
126- }
127- to {
128- image = ' zmflspa123/nebula:latest'
129- }
121+ from {
122+ image = ' openjdk:17-alpine'
123+ platforms {
124+ platform {
125+ architecture = ' amd64'
126+ os = ' linux'
127+ }
128+ }
129+ }
130+ to {
131+ image = ' zmflspa123/nebula:latest'
132+ }
130133}
0 commit comments