75 lines
1.7 KiB
Groovy
75 lines
1.7 KiB
Groovy
plugins {
|
|
id 'java'
|
|
id 'application'
|
|
}
|
|
|
|
group = 'creator.loki'
|
|
version = '1.0.0'
|
|
|
|
repositories {
|
|
mavenCentral()
|
|
}
|
|
|
|
dependencies {
|
|
// JDA - Discord API
|
|
implementation('net.dv8tion:JDA:5.0.0-beta.20') {
|
|
exclude module: 'opus-java'
|
|
}
|
|
|
|
// LavaPlayer для голосового TTS
|
|
implementation 'dev.arbjerg:lavaplayer:2.2.2'
|
|
|
|
// dotenv для загрузки .env
|
|
implementation 'io.github.cdimascio:dotenv-java:3.0.0'
|
|
|
|
// Logging
|
|
implementation 'org.slf4j:slf4j-api:2.0.12'
|
|
implementation 'ch.qos.logback:logback-classic:1.5.3'
|
|
|
|
// JSON
|
|
implementation 'com.google.code.gson:gson:2.10.1'
|
|
|
|
// Caffeine Cache
|
|
implementation 'com.github.ben-manes.caffeine:caffeine:3.1.8'
|
|
|
|
// Google Guice - Dependency Injection
|
|
implementation 'com.google.inject:guice:7.0.0'
|
|
|
|
// SQLite Database
|
|
implementation 'org.xerial:sqlite-jdbc:3.45.1.0'
|
|
|
|
// Testing
|
|
testImplementation 'org.junit.jupiter:junit-jupiter:5.10.2'
|
|
testImplementation 'org.mockito:mockito-core:5.11.0'
|
|
testImplementation 'org.mockito:mockito-junit-jupiter:5.11.0'
|
|
testRuntimeOnly 'org.junit.platform:junit-platform-launcher'
|
|
}
|
|
|
|
java {
|
|
sourceCompatibility = JavaVersion.VERSION_17
|
|
targetCompatibility = JavaVersion.VERSION_17
|
|
}
|
|
|
|
tasks.withType(JavaCompile) {
|
|
options.encoding = 'UTF-8'
|
|
}
|
|
|
|
test {
|
|
useJUnitPlatform()
|
|
}
|
|
|
|
application {
|
|
mainClass = 'creator.loki.App'
|
|
}
|
|
|
|
jar {
|
|
manifest {
|
|
attributes(
|
|
'Main-Class': 'creator.loki.App'
|
|
)
|
|
}
|
|
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
|
|
from {
|
|
configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it) }
|
|
}
|
|
}
|