Files
hamster-blog/blog-backend/build.gradle
2023-03-27 00:17:27 +08:00

75 lines
2.2 KiB
Groovy

plugins {
id 'java'
id 'org.springframework.boot' version '3.0.2'
id 'io.spring.dependency-management' version '1.1.0'
}
evaluationDependsOn(":blog-frontend")
group = 'cn.hamster3.application.blog'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '17'
configurations {
compileOnly {
extendsFrom annotationProcessor
}
}
repositories {
maven {
url "https://maven.airgame.net/maven-public"
}
}
dependencies {
// https://mvnrepository.com/artifact/org.springdoc/springdoc-openapi-starter-webmvc-ui
implementation 'org.springdoc:springdoc-openapi-starter-webmvc-ui:2.0.2'
compileOnly 'org.projectlombok:lombok'
annotationProcessor 'org.projectlombok:lombok'
implementation 'org.mapstruct:mapstruct:1.5.3.Final'
annotationProcessor 'org.mapstruct:mapstruct-processor:1.5.3.Final'
// https://mvnrepository.com/artifact/com.github.therapi/therapi-runtime-javadoc
implementation 'com.github.therapi:therapi-runtime-javadoc:0.15.0'
annotationProcessor 'com.github.therapi:therapi-runtime-javadoc:0.15.0'
// https://mvnrepository.com/artifact/org.jetbrains/annotations
compileOnly 'org.jetbrains:annotations:24.0.0'
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-validation'
implementation 'org.springframework.session:spring-session-core'
implementation 'org.flywaydb:flyway-core'
implementation 'org.flywaydb:flyway-mysql'
runtimeOnly 'com.mysql:mysql-connector-j'
implementation 'org.springframework.boot:spring-boot-starter'
developmentOnly 'org.springframework.boot:spring-boot-devtools'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
testImplementation 'org.springframework.security:spring-security-test'
}
tasks.named('test') {
useJUnitPlatform()
}
processResources {
dependsOn(":blog-frontend:npmBuildOnly")
//noinspection ConfigurationAvoidance
from(tasks.findByPath(":blog-frontend:npmBuildOnly").outputs) {
into 'static'
}
}
clean {
delete(files('bin'))
}