plugins { id "java" id "maven-publish" id "net.kyori.blossom" version "1.3.1" } java.toolchain.languageVersion = JavaLanguageVersion.of(8) compileJava.options.encoding = compileTestJava.options.encoding = javadoc.options.encoding = "UTF-8" group = project.maven_group archivesBaseName = project.maven_name version = project.maven_version configurations { include implementation.extendsFrom include api.extendsFrom include } repositories { mavenCentral() maven { name = "Jitpack" url = "https://jitpack.io" } maven { name = "Lenni0451" url "https://maven.lenni0451.net/releases" } maven { name = "ViaVersion" url "https://repo.viaversion.com" } } dependencies { include "com.viaversion:viaversion:4.5.2-SNAPSHOT" include("com.viaversion:viabackwards-common:4.5.2-SNAPSHOT") { exclude group: "com.viaversion", module: "viaversion" exclude group: "io.netty", module: "netty-all" exclude group: "com.google.guava", module: "guava" } include "com.viaversion:viarewind-core:2.0.3-SNAPSHOT" include "net.raphimc:ViaLegacy:2.0.4" include("net.raphimc:ViaProtocolHack:2.0.1") { exclude group: "org.slf4j", module: "slf4j-api" } include "com.google.code.gson:gson:2.10" include "com.formdev:flatlaf:3.0" include "com.google.guava:guava:31.1-jre" include "net.sf.jopt-simple:jopt-simple:5.0.4" include "org.apache.logging.log4j:log4j-core:2.19.0" include "org.apache.logging.log4j:log4j-slf4j-impl:2.19.0" include("com.github.GeyserMC:MCAuthLib:1.4") { exclude group: "com.google.code.gson", module: "gson" } include "net.lenni0451.classtransform:mixinstranslator:1.7.6" include "net.lenni0451.classtransform:mixinsdummy:1.7.6" include "net.lenni0451.classtransform:additionalclassprovider:1.7.6" include "net.lenni0451:Reflect:1.0.2" include "net.lenni0451:LambdaEvents:2.0.3" include "net.raphimc.netminecraft:all:2.2.2" include("net.raphimc:MinecraftAuth:2.0.1") { exclude group: "com.google.code.gson", module: "gson" exclude group: "org.slf4j", module: "slf4j-api" } } blossom { replaceToken("\${version}", project.version, "src/main/java/net/raphimc/viaproxy/ViaProxy.java") } jar { dependsOn configurations.include from { duplicatesStrategy = DuplicatesStrategy.EXCLUDE configurations.include.collect { zipTree(it) } } { exclude "META-INF/*.RSA", "META-INF/*.SF", "META-INF/*.DSA" } manifest { attributes( "Main-Class": "net.raphimc.viaproxy.ViaProxy", "Multi-Release": "true" ) } from("LICENSE") { rename { "${it}_${project.archivesBaseName}" } } } publishing { repositories { maven { name = "reposilite" url = "https://maven.lenni0451.net/releases" credentials(PasswordCredentials) authentication { basic(BasicAuthentication) } } } publications { maven(MavenPublication) { groupId = project.maven_group artifactId = project.maven_name version = project.maven_version from components.java } } }