InfernalMobs/build.gradle.kts
2025-02-07 20:42:50 +08:00

91 lines
3.1 KiB
Plaintext

import java.util.*
plugins {
kotlin("jvm") version "2.0.10"
kotlin("kapt") version "1.7.0"
id("com.github.johnrengelman.shadow") version "7.1.2"
id ("com.google.devtools.ksp") version "2.0.20-1.0.25"
}
group = "io.github.thehrz.infernalmobs"
version = "1.0.0"
repositories {
mavenCentral()
maven("https://hub.spigotmc.org/nexus/content/repositories/snapshots/")
maven("https://papermc.io/repo/repository/maven-public/")
maven("https://oss.sonatype.org/content/groups/public/")
maven("https://repo.codemc.org/repository/maven-public/")
maven("https://plugins.gradle.org/m2/")
maven("https://maven.enginehub.org/repo/")
maven("https://repo.triumphteam.dev/snapshots/")
maven("https://repo.dustplanet.de/artifactory/libs-release-local")
maven("https://jitpack.io")
maven("https://repo.dmulloy2.net/repository/public/")
}
dependencies {
implementation(kotlin("stdlib-jdk8"))
// implementation(platform("org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.6.2"))
// implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core")
implementation("com.github.cryptomorin:XSeries:8.8.0")
implementation("me.mattstudios:triumph-msg-adventure:2.2.4-SNAPSHOT")
implementation("de.exlll:configlib-paper:4.5.0")
// implementation("io.insert-koin:koin-core:4.0.2")
implementation("io.insert-koin:koin-core-jvm:4.0.2")
implementation("io.insert-koin:koin-annotations:1.4.0")
ksp("io.insert-koin:koin-ksp-compiler:1.3.1")
compileOnly("io.papermc.paper:paper-api:1.17.1-R0.1-SNAPSHOT")
compileOnly("org.apache.logging.log4j:log4j-core:2.17.2")
compileOnly("com.comphenix.protocol:ProtocolLib:5.3.0")
compileOnly("com.sk89q.worldguard:worldguard-bukkit:7.0.5")
compileOnly("com.github.TownyAdvanced:Towny:0.97.1.0")
compileOnly("de.dustplanet:silkspawners:7.1.0") {
exclude(group = "*")
}
}
tasks.build {
dependsOn("shadowJar")
}
tasks.shadowJar {
val dependencyPackage = "${rootProject.group}.dependencies.${rootProject.name.lowercase(Locale.getDefault())}"
relocate("com.cryptomorin.xseries", "${dependencyPackage}.xseries")
relocate("javax.inject", "${dependencyPackage}.javax.inject")
relocate("me.mattstudios.msg", "${dependencyPackage}.mfmsg")
relocate("org.jetbrains", "${dependencyPackage}.jetbrains")
relocate("org.intellij", "${dependencyPackage}.jetbrains.intellij")
relocate("toothpick", "${dependencyPackage}.toothpick")
exclude("ScopeJVMKt.class")
exclude("DebugProbesKt.bin")
exclude("META-INF/**")
}
tasks.withType<ProcessResources> {
filesMatching("plugin.yml") {
expand("version" to version)
}
}
val targetJavaVersion = 17
kotlin {
jvmToolchain(targetJavaVersion)
}
//tasks.withType<JavaCompile> {
// sourceCompatibility = javaVersion
// targetCompatibility = javaVersion
// options.encoding = "UTF-8"
//}
//tasks.processResources {
// outputs.upToDateWhen { false }
// val main_class = "${project.group}.${project.name.toLowerCase()}.${project.name}"
// expand("name" to project.name, "version" to project.version, "mainClass" to main_class)
//}