Update gradle and make the buildscript compatible with architectury-loom 0.10+
This commit is contained in:
parent
4c486bf852
commit
079ecb341b
|
@ -1,5 +1,7 @@
|
||||||
import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar
|
import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar
|
||||||
import com.modrinth.minotaur.request.VersionType
|
import com.modrinth.minotaur.request.VersionType
|
||||||
|
import net.fabricmc.loom.LoomGradleExtension
|
||||||
|
import net.fabricmc.loom.LoomGradlePlugin
|
||||||
|
|
||||||
buildscript {
|
buildscript {
|
||||||
dependencies {
|
dependencies {
|
||||||
|
@ -16,7 +18,7 @@ plugins {
|
||||||
id("architectury-plugin") version "[3.0.100, 3.5["
|
id("architectury-plugin") version "[3.0.100, 3.5["
|
||||||
id("dev.architectury.loom") version (
|
id("dev.architectury.loom") version (
|
||||||
if (JavaVersion.current() >= JavaVersion.VERSION_16)
|
if (JavaVersion.current() >= JavaVersion.VERSION_16)
|
||||||
"[0.9.0.153, 0.9.1["
|
"[0.9.0.153, 0.10.2["
|
||||||
else "[0.7.3.152, 0.7.4["
|
else "[0.7.3.152, 0.7.4["
|
||||||
) apply false
|
) apply false
|
||||||
id("com.github.ben-manes.versions") version "0.39.0"
|
id("com.github.ben-manes.versions") version "0.39.0"
|
||||||
|
@ -54,17 +56,35 @@ subprojects {
|
||||||
lateinit var mappingsDep: Dependency
|
lateinit var mappingsDep: Dependency
|
||||||
apply(plugin = "dev.architectury.loom")
|
apply(plugin = "dev.architectury.loom")
|
||||||
apply(plugin = "org.jetbrains.kotlin.plugin.serialization")
|
apply(plugin = "org.jetbrains.kotlin.plugin.serialization")
|
||||||
extensions.configure<net.fabricmc.loom.LoomGradleExtension>("loom") {
|
extensions.configure<LoomGradleExtension>("loom") {
|
||||||
mappingsDep = layered {
|
mappingsDep = layered {
|
||||||
officialMojangMappings().crane("dev.architectury:crane:${rootProject.architectury.minecraft}+build.+")
|
officialMojangMappings().parchment("org.parchmentmc.data:parchment-${rootProject.architectury.minecraft}:2021.10.17")
|
||||||
}
|
}
|
||||||
silentMojangMappingsLicense()
|
silentMojangMappingsLicense()
|
||||||
mixinConfig("snowygui-${project.name}.mixins.json")
|
val refmap = "snowygui-${project.name}-refmap.json"
|
||||||
refmapName = "snowygui-${project.name}-refmap.json"
|
// The following is used to make this buildscript compatible with architectury-loom 0.7.3, 0.9.X, 0.10.X and higher versions
|
||||||
|
with(javaClass) {
|
||||||
|
if (LoomGradlePlugin.LOOM_VERSION.run {
|
||||||
|
val numberPos = indexOf('.') + 1
|
||||||
|
substring(numberPos, indexOf('.', numberPos))
|
||||||
|
}.toDouble() < 10) {
|
||||||
|
getDeclaredMethod("setRefmapName", String::class.java).invoke(this@configure, refmap)
|
||||||
|
getDeclaredMethod("mixinConfig", String::class.java).invoke(this@configure, "snowygui-${project.name}.mixins.json")
|
||||||
|
} else {
|
||||||
|
getDeclaredMethod("getMixin").invoke(this@configure).run {
|
||||||
|
javaClass.getDeclaredMethod("getDefaultRefmapName").invoke(this).let { refmapProperty ->
|
||||||
|
refmapProperty.javaClass.getDeclaredMethod("set", Any::class.java).invoke(refmapProperty, refmap)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
apply(plugin = "com.github.johnrengelman.shadow")
|
apply(plugin = "com.github.johnrengelman.shadow")
|
||||||
val shadowC by configurations.creating
|
val shadowC by configurations.creating
|
||||||
repositories { maven(url = "https://jitpack.io"); mavenCentral() }
|
repositories {
|
||||||
|
maven(url = "https://jitpack.io"); mavenCentral()
|
||||||
|
maven(url = "https://maven.parchmentmc.org")
|
||||||
|
}
|
||||||
dependencies {
|
dependencies {
|
||||||
implementation("$kotlinX:kotlinx-coroutines-jdk8:${rootProject.property("kotlin_coroutines_version")}")
|
implementation("$kotlinX:kotlinx-coroutines-jdk8:${rootProject.property("kotlin_coroutines_version")}")
|
||||||
implementation("$kotlinX:kotlinx-serialization-core:$serializationVer")
|
implementation("$kotlinX:kotlinx-serialization-core:$serializationVer")
|
||||||
|
|
|
@ -11,7 +11,6 @@ dependencies {
|
||||||
add("developmentForge", project(path = ":common")) { isTransitive = false }
|
add("developmentForge", project(path = ":common")) { isTransitive = false }
|
||||||
shadowC(project(path = ":common", configuration = "transformProductionForge")) { isTransitive = false }
|
shadowC(project(path = ":common", configuration = "transformProductionForge")) { isTransitive = false }
|
||||||
}; loom {
|
}; loom {
|
||||||
useFabricMixin = true
|
|
||||||
if (JavaVersion.current().isJava9Compatible) {
|
if (JavaVersion.current().isJava9Compatible) {
|
||||||
runs {
|
runs {
|
||||||
val args: MutableList<String> = mutableListOf("-Dfml.earlyprogresswindow=false")
|
val args: MutableList<String> = mutableListOf("-Dfml.earlyprogresswindow=false")
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
distributionBase=GRADLE_USER_HOME
|
distributionBase=GRADLE_USER_HOME
|
||||||
distributionPath=wrapper/dists
|
distributionPath=wrapper/dists
|
||||||
distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-bin.zip
|
distributionUrl=https\://services.gradle.org/distributions/gradle-7.3-rc-2-bin.zip
|
||||||
zipStoreBase=GRADLE_USER_HOME
|
zipStoreBase=GRADLE_USER_HOME
|
||||||
zipStorePath=wrapper/dists
|
zipStorePath=wrapper/dists
|
||||||
|
|
Loading…
Reference in New Issue