93 lines
3.2 KiB
Kotlin
93 lines
3.2 KiB
Kotlin
plugins {
|
|
kotlin("jvm") version "1.9.25"
|
|
kotlin("plugin.spring") version "1.9.25"
|
|
kotlin("plugin.jpa") version "1.9.25"
|
|
id("org.springframework.boot") version "3.4.0"
|
|
id("io.spring.dependency-management") version "1.1.6"
|
|
kotlin("plugin.serialization") version "2.1.0"
|
|
id("application")
|
|
}
|
|
|
|
group = "space.luminic"
|
|
version = "v2"
|
|
|
|
application {
|
|
mainClass.set("space.luminic.finance.MainKt") // Укажи путь к главному классу
|
|
}
|
|
|
|
java {
|
|
toolchain {
|
|
languageVersion = JavaLanguageVersion.of(17)
|
|
}
|
|
}
|
|
|
|
configurations {
|
|
compileOnly {
|
|
extendsFrom(configurations.annotationProcessor.get())
|
|
}
|
|
}
|
|
|
|
repositories {
|
|
mavenCentral()
|
|
}
|
|
|
|
dependencies {
|
|
// Spring
|
|
implementation("org.springframework.boot:spring-boot-starter-cache")
|
|
implementation("org.springframework.boot:spring-boot-starter-security")
|
|
implementation ("org.springframework.boot:spring-boot-starter-actuator")
|
|
implementation("org.springframework.boot:spring-boot-starter-validation")
|
|
implementation("org.springframework.boot:spring-boot-starter-actuator")
|
|
implementation("org.springdoc:springdoc-openapi-starter-webmvc-ui:2.8.13")
|
|
implementation("org.springframework.boot:spring-boot-starter-web") // MVC
|
|
implementation("org.springframework.boot:spring-boot-starter-jdbc")
|
|
implementation("org.postgresql:postgresql:42.7.8")
|
|
|
|
// Аудит Spring Data JPA (@CreatedBy/@CreatedDate)
|
|
implementation("org.springframework.data:spring-data-commons")
|
|
// Миграции
|
|
implementation("org.flywaydb:flyway-core:11.14.1")
|
|
implementation("org.flywaydb:flyway-database-postgresql:11.14.1")
|
|
// jackson для jsonb (если маппишь объекты в json)
|
|
implementation("com.fasterxml.jackson.module:jackson-module-kotlin")
|
|
|
|
implementation("commons-logging:commons-logging:1.3.4")
|
|
|
|
implementation("com.fasterxml.jackson.module:jackson-module-kotlin")
|
|
implementation("org.jetbrains.kotlin:kotlin-reflect")
|
|
implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.7.3")
|
|
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.7.0")
|
|
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-reactor:1.7.3")
|
|
implementation("org.jetbrains.kotlin.plugin.jpa:org.jetbrains.kotlin.plugin.jpa.gradle.plugin:1.9.25")
|
|
|
|
implementation("io.jsonwebtoken:jjwt-api:0.11.5")
|
|
implementation("io.jsonwebtoken:jjwt-impl:0.11.5")
|
|
implementation("io.jsonwebtoken:jjwt-jackson:0.11.5")
|
|
implementation("com.interaso:webpush:1.2.0")
|
|
|
|
implementation("io.micrometer:micrometer-registry-prometheus")
|
|
|
|
implementation("org.telegram:telegrambots:6.9.7.1")
|
|
implementation("org.telegram:telegrambots-spring-boot-starter:6.9.7.1")
|
|
implementation("com.opencsv:opencsv:5.10")
|
|
|
|
|
|
compileOnly("org.projectlombok:lombok")
|
|
annotationProcessor("org.projectlombok:lombok")
|
|
testImplementation("org.springframework.boot:spring-boot-starter-test")
|
|
testImplementation("org.jetbrains.kotlin:kotlin-test-junit5")
|
|
testRuntimeOnly("org.junit.platform:junit-platform-launcher")
|
|
}
|
|
|
|
kotlin {
|
|
compilerOptions {
|
|
freeCompilerArgs.addAll("-Xjsr305=strict")
|
|
}
|
|
}
|
|
|
|
tasks.withType<Test> {
|
|
useJUnitPlatform()
|
|
}
|
|
|
|
|