mirror of
https://github.com/ViaVersion/ViaFabricPlus.git
synced 2024-11-02 08:59:31 +01:00
152 lines
3.8 KiB
Groovy
152 lines
3.8 KiB
Groovy
plugins {
|
|
id "fabric-loom" version "1.4-SNAPSHOT"
|
|
id "maven-publish"
|
|
}
|
|
|
|
base {
|
|
archivesName = project.archives_base_name
|
|
version = project.mod_version
|
|
group = project.maven_group
|
|
}
|
|
|
|
configurations {
|
|
// Jar in sources
|
|
api.extendsFrom jis
|
|
|
|
// Jar in jar
|
|
include.extendsFrom jij
|
|
implementation.extendsFrom jij
|
|
}
|
|
|
|
repositories {
|
|
mavenCentral()
|
|
maven {
|
|
name = "Jitpack"
|
|
url = "https://jitpack.io"
|
|
}
|
|
maven {
|
|
name = "ViaVersion"
|
|
url = "https://repo.viaversion.com"
|
|
}
|
|
maven {
|
|
name = "Lenni0451"
|
|
url = "https://maven.lenni0451.net/everything"
|
|
}
|
|
maven {
|
|
name = "TerraformersMC"
|
|
url = "https://maven.terraformersmc.com/releases"
|
|
}
|
|
maven {
|
|
name = "OpenCollab Snapshots"
|
|
url = "https://repo.opencollab.dev/maven-snapshots/"
|
|
}
|
|
}
|
|
|
|
loom {
|
|
accessWidenerPath = file("src/main/resources/viafabricplus.accesswidener")
|
|
}
|
|
|
|
dependencies {
|
|
// Minecraft/Fabric
|
|
minecraft "com.mojang:minecraft:${project.minecraft_version}"
|
|
mappings "net.fabricmc:yarn:${project.yarn_mappings}:v2"
|
|
modImplementation "net.fabricmc:fabric-loader:${project.loader_version}"
|
|
modImplementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_api_version}"
|
|
|
|
// ViaVersion Libraries
|
|
jis "com.viaversion:viaversion-common:${project.viaversion_version}"
|
|
jis ("com.viaversion:viabackwards-common:${project.viabackwards_version}") {
|
|
exclude group: "com.viaversion", module: "viaversion"
|
|
exclude group: "io.netty", module: "netty-all"
|
|
exclude group: "com.google.guava", module: "guava"
|
|
}
|
|
jis ("net.raphimc:ViaLegacy:${project.vialegacy_version}") {
|
|
exclude group: "com.google.code.gson", module: "gson"
|
|
}
|
|
jis "net.raphimc:ViaAprilFools:${project.viaaprilfools_version}"
|
|
jis ("net.raphimc:ViaBedrock:${project.viabedrock_version}") {
|
|
exclude group: "io.netty"
|
|
exclude group: "io.jsonwebtoken"
|
|
exclude group: "net.lenni0451.mcstructs", module: "text"
|
|
exclude group: "com.mojang", module: "brigadier"
|
|
}
|
|
jis ("net.raphimc:ViaLoader:${project.vialoader_version}") {
|
|
exclude group: "com.google.guava", module: "guava"
|
|
exclude group: "org.slf4j", module: "slf4j-api"
|
|
}
|
|
|
|
// RaphiMC Libraries
|
|
jis ("net.raphimc:MinecraftAuth:${project.minecraftauth_version}") {
|
|
exclude group: "com.google.code.gson", module: "gson"
|
|
exclude group: "org.slf4j", module: "slf4j-api"
|
|
}
|
|
jis("org.cloudburstmc.netty:netty-transport-raknet:${project.raknet_transport_version}") {
|
|
exclude group: "io.netty"
|
|
}
|
|
|
|
// Lenni0451 Libraries
|
|
jij "net.lenni0451:Reflect:${project.reflect_version}"
|
|
|
|
// Misc Libraries
|
|
modApi "com.terraformersmc:modmenu:${project.mod_menu_version}"
|
|
include implementation(annotationProcessor("com.github.llamalad7.mixinextras:mixinextras-fabric:${project.mixin_extras_version}"))
|
|
jis "de.florianmichael:Classic4J:${project.classic4j_version}"
|
|
}
|
|
|
|
processResources {
|
|
inputs.property "version", project.version
|
|
|
|
filesMatching("fabric.mod.json") {
|
|
expand "version": project.version
|
|
}
|
|
}
|
|
|
|
java {
|
|
withSourcesJar()
|
|
|
|
sourceCompatibility = JavaVersion.VERSION_17
|
|
targetCompatibility = JavaVersion.VERSION_17
|
|
}
|
|
|
|
jar {
|
|
// Add all dependencies which are included using "jis" to the jar file and exclude the META-INF folder
|
|
dependsOn configurations.jis
|
|
from {
|
|
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
|
|
configurations.jis.collect {
|
|
zipTree(it)
|
|
}
|
|
} {
|
|
exclude "META-INF/*.RSA", "META-INF/*.SF", "META-INF/*.DSA"
|
|
}
|
|
|
|
// Rename the project's license file to LICENSE_<project_name> to avoid conflicts
|
|
from("LICENSE") {
|
|
rename {
|
|
"${it}_${project.archivesBaseName}"
|
|
}
|
|
}
|
|
}
|
|
|
|
publishing {
|
|
repositories {
|
|
maven {
|
|
name = "Via"
|
|
url = "https://repo.viaversion.com/"
|
|
credentials(PasswordCredentials)
|
|
authentication {
|
|
basic(BasicAuthentication)
|
|
}
|
|
}
|
|
}
|
|
publications {
|
|
maven(MavenPublication) {
|
|
groupId = project.maven_group
|
|
artifactId = project.archives_base_name
|
|
version = project.mod_version
|
|
|
|
from components.java
|
|
}
|
|
}
|
|
}
|