mirror of https://github.com/halo-dev/halo
110 lines
3.7 KiB
Groovy
110 lines
3.7 KiB
Groovy
plugins {
|
|
id 'org.springframework.boot' version '3.0.1'
|
|
id 'io.spring.dependency-management' version '1.1.0'
|
|
id "checkstyle"
|
|
id 'java'
|
|
}
|
|
|
|
group = "run.halo.app"
|
|
sourceCompatibility = JavaVersion.VERSION_17
|
|
|
|
checkstyle {
|
|
toolVersion = "9.3"
|
|
showViolations = false
|
|
ignoreFailures = false
|
|
}
|
|
|
|
repositories {
|
|
mavenCentral()
|
|
|
|
maven { url 'https://repo.spring.io/milestone' }
|
|
}
|
|
|
|
|
|
configurations {
|
|
compileOnly {
|
|
extendsFrom annotationProcessor
|
|
}
|
|
}
|
|
|
|
bootJar {
|
|
manifest {
|
|
attributes "Implementation-Title": "Halo Application",
|
|
"Implementation-Version": archiveVersion
|
|
}
|
|
}
|
|
|
|
ext {
|
|
commonsLang3 = "3.12.0"
|
|
base62 = "0.1.3"
|
|
pf4j = '3.8.0'
|
|
javaDiffUtils = "4.12"
|
|
guava = "31.1-jre"
|
|
jsoup = '1.15.3'
|
|
jsonPatch = "1.13"
|
|
springDocOpenAPI = "2.0.0"
|
|
}
|
|
|
|
dependencies {
|
|
implementation 'org.springframework.boot:spring-boot-starter-actuator'
|
|
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
|
|
implementation 'org.springframework.boot:spring-boot-starter-mail'
|
|
implementation 'org.springframework.boot:spring-boot-starter-thymeleaf'
|
|
implementation 'org.springframework.boot:spring-boot-starter-webflux'
|
|
implementation 'org.springframework.boot:spring-boot-starter-validation'
|
|
implementation 'org.springframework.boot:spring-boot-starter-data-r2dbc'
|
|
|
|
// Spring Security
|
|
implementation 'org.springframework.boot:spring-boot-starter-security'
|
|
implementation 'org.springframework.security:spring-security-oauth2-jose'
|
|
implementation 'org.springframework.security:spring-security-oauth2-resource-server'
|
|
|
|
implementation "org.springdoc:springdoc-openapi-starter-webflux-ui:$springDocOpenAPI"
|
|
implementation 'org.openapi4j:openapi-schema-validator:1.0.7'
|
|
implementation "net.bytebuddy:byte-buddy"
|
|
|
|
// Apache Lucene
|
|
implementation 'org.apache.lucene:lucene-core:9.4.1'
|
|
implementation 'org.apache.lucene:lucene-queryparser:9.4.1'
|
|
implementation 'org.apache.lucene:lucene-highlighter:9.4.1'
|
|
implementation 'cn.shenyanchao.ik-analyzer:ik-analyzer:9.0.0'
|
|
|
|
implementation "org.apache.commons:commons-lang3:$commonsLang3"
|
|
implementation "io.seruco.encoding:base62:$base62"
|
|
implementation "org.pf4j:pf4j:$pf4j"
|
|
implementation "com.google.guava:guava:$guava"
|
|
implementation "org.jsoup:jsoup:$jsoup"
|
|
implementation "io.github.java-diff-utils:java-diff-utils:$javaDiffUtils"
|
|
implementation "org.springframework.integration:spring-integration-core"
|
|
implementation "com.github.java-json-tools:json-patch:$jsonPatch"
|
|
implementation "org.thymeleaf.extras:thymeleaf-extras-springsecurity6"
|
|
|
|
compileOnly 'org.projectlombok:lombok'
|
|
testCompileOnly 'org.projectlombok:lombok'
|
|
|
|
annotationProcessor "org.springframework.boot:spring-boot-configuration-processor"
|
|
|
|
developmentOnly 'org.springframework.boot:spring-boot-devtools'
|
|
|
|
// R2DBC
|
|
// Currently, official doesn't support mssql and mariadb yet until drivers are available.
|
|
// See https://github.com/spring-projects/spring-data-relational/commit/ee6c2c89b5c433748b22a79cf40dc8e01142caa3
|
|
// for more.
|
|
runtimeOnly 'io.r2dbc:r2dbc-h2'
|
|
runtimeOnly 'com.github.jasync-sql:jasync-r2dbc-mysql:2.1.7'
|
|
runtimeOnly 'org.mariadb:r2dbc-mariadb:1.1.3'
|
|
runtimeOnly 'org.postgresql:postgresql'
|
|
runtimeOnly 'org.postgresql:r2dbc-postgresql'
|
|
|
|
annotationProcessor 'org.projectlombok:lombok'
|
|
testAnnotationProcessor 'org.projectlombok:lombok'
|
|
|
|
testImplementation 'org.springframework.boot:spring-boot-starter-test'
|
|
testImplementation 'org.springframework.security:spring-security-test'
|
|
testImplementation 'io.projectreactor:reactor-test'
|
|
}
|
|
|
|
tasks.named('test') {
|
|
useJUnitPlatform()
|
|
}
|