Ascension/common/build.gradle

110 lines
3.2 KiB
Groovy

import dev.vankka.dependencydownload.task.GenerateDependencyDownloadResourceTask
configurations {
hikari
h2Driver
mysqlDriver
mcAuthLib
compileOnly.extendsFrom hikari, h2Driver, mysqlDriver, mcAuthLib
testRuntimeOnly.extendsFrom runtimeDownloadOnly
}
tasks.register('generateResourceForHikari', GenerateDependencyDownloadResourceTask) {
var conf = configurations.hikari
configuration = conf
file = 'dependencies/' + conf.name + '.txt'
}
tasks.register('generateResourceForH2Driver', GenerateDependencyDownloadResourceTask) {
var conf = configurations.h2Driver
configuration = conf
file = 'dependencies/' + conf.name + '.txt'
}
tasks.register('generateResourceForMySQLDriver', GenerateDependencyDownloadResourceTask) {
var conf = configurations.mysqlDriver
configuration = conf
file = 'dependencies/' + conf.name + '.txt'
}
tasks.register('generateResourceForMCAuthLib', GenerateDependencyDownloadResourceTask) {
var conf = configurations.mcAuthLib
configuration = conf
file = 'dependencies/' + conf.name + '.txt'
}
dependencies {
// API
annotationProcessor project(':api')
compileOnlyApi project(':common:common-api')
testImplementation project(':common:common-api')
// Unrelocate
compileOnlyApi project(':common:common-unrelocate')
// DependencyDownload
api(libs.dependencydownload.runtime)
// Discord Webhooks
runtimeDownloadApi(libs.webhooks) {
// okhttp is already included
exclude group: 'com.squareup.okhttp3', module: 'okhttp'
}
// Apache Commons
runtimeDownloadApi(libs.commons.lang)
runtimeDownloadApi(libs.commons.io)
// Caffeine
runtimeDownloadApi(libs.caffeine) {
exclude group: 'com.google.errorprone', module: 'error_prone_annotations'
}
// DynamicProxy
runtimeDownloadApi(libs.dynamicproxy)
// Jackson (transitive in :api)
compileOnlyApi(libs.jackson.databind)
// Config
runtimeDownloadApi(libs.configurate.yaml)
// Logging
compileOnly(libs.log4j.core)
// Adventure, MCDiscordReserializer, EnhancedLegacyText
runtimeDownloadApi(libs.adventure.api)
runtimeDownloadApi(libs.adventure.serializer.plain)
runtimeDownloadApi(libs.adventure.serializer.legacy)
runtimeDownloadApi(libs.adventure.serializer.gson)
runtimeDownloadApi(libs.adventure.serializer.ansi)
runtimeDownloadApi(libs.mcdiscordreserializer)
runtimeDownloadApi(libs.enhancedlegacytext)
// Database
hikari(libs.hikaricp)
h2Driver(libs.h2)
mysqlDriver(libs.mysql)
// MinecraftAuthentication library
mcAuthLib(libs.minecraftauth.lib) {
exclude group: 'junit', module: 'junit'
exclude group: 'org.jetbrains', module: 'annotations'
}
// Brigadier
compileOnlyApi(libs.brigadier)
// Integrations
compileOnlyApi(libs.luckperms)
}
processResources {
dependsOn(
generateRuntimeDownloadResourceForRuntimeDownloadOnly,
generateResourceForHikari,
generateResourceForH2Driver,
generateResourceForMySQLDriver,
generateResourceForMCAuthLib
)
}
// Relocations in buildscript/relocations.gradle