import dev.vankka.dependencydownload.task.GenerateDependencyDownloadResourceTask configurations { hikari h2Driver mysqlDriver compileOnly.extendsFrom hikari, h2Driver, mysqlDriver testRuntimeOnly.extendsFrom runtimeDownloadOnly } task generateResourceForHikari(type: GenerateDependencyDownloadResourceTask) { var conf = configurations.hikari configuration = conf file = 'dependencies/' + conf.name + '.txt' relocate 'com.zaxxer.hikari', 'com.discordsrv.dependencies.com.zaxxer.hikari' relocate 'org.slf4j', 'com.discordsrv.dependencies.org.slf4j' } task generateResourceForH2Driver(type: GenerateDependencyDownloadResourceTask) { var conf = configurations.h2Driver configuration = conf file = 'dependencies/' + conf.name + '.txt' } task generateResourceForMySQLDriver(type: GenerateDependencyDownloadResourceTask) { var conf = configurations.mysqlDriver configuration = conf file = 'dependencies/' + conf.name + '.txt' } dependencies { // API annotationProcessor project(':api') compileOnlyApi project(':common:common-api') testImplementation project(':common:common-api') // DependencyDownload api 'dev.vankka:dependencydownload-runtime:' + rootProject.ddVersion // Discord Webhooks runtimeDownloadApi 'club.minnced:discord-webhooks:0.7.5' // Apache Commons runtimeDownloadApi 'org.apache.commons:commons-lang3:3.12.0' runtimeDownloadApi 'commons-io:commons-io:2.10.0' // Caffeine runtimeDownloadApi('com.github.ben-manes.caffeine:caffeine:2.9.2') { exclude group: 'com.google.errorprone', module: 'error_prone_annotations' } // Config runtimeDownloadApi 'org.spongepowered:configurate-yaml:' + rootProject.configurateVersion runtimeDownloadApi 'org.spongepowered:configurate-hocon:' + rootProject.configurateVersion // Jackson (transitive in :api) compileOnly 'com.fasterxml.jackson.core:jackson-databind:2.13.1' // Logging compileOnlyApi project(':common:common-slf4j-hack') compileOnly 'org.apache.logging.log4j:log4j-core:2.0-beta9' // Adventure, MCDiscordReserializer, EnhancedLegacyText runtimeDownloadApi 'net.kyori:adventure-api:' + rootProject.adventureVersion runtimeDownloadApi 'net.kyori:adventure-text-serializer-plain:' + rootProject.adventureVersion runtimeDownloadApi 'net.kyori:adventure-text-serializer-legacy:' + rootProject.adventureVersion runtimeDownloadApi 'net.kyori:adventure-text-serializer-gson:' + rootProject.adventureVersion runtimeDownloadApi 'dev.vankka:mcdiscordreserializer:4.3.0' runtimeDownloadApi 'dev.vankka:enhancedlegacytext:1.0.0-SNAPSHOT' // Brigadier compileOnlyApi 'com.mojang:brigadier:1.0.18' // Database hikari('com.zaxxer:HikariCP:4.0.3') { exclude group: 'org.slf4j' } h2Driver 'com.h2database:h2:2.1.210' mysqlDriver 'mysql:mysql-connector-java:8.0.25' // Integrations compileOnlyApi 'net.luckperms:api:5.3' } processResources { dependsOn( generateRuntimeDownloadResourceForRuntimeDownloadOnly, generateResourceForHikari, generateResourceForH2Driver, generateResourceForMySQLDriver ) } // Relocations in buildscript/relocations.gradle