aboutsummaryrefslogtreecommitdiff
path: root/build.gradle.kts
diff options
context:
space:
mode:
authorLinnea Gräf <nea@nea.moe>2024-06-20 02:48:38 +0200
committerLinnea Gräf <nea@nea.moe>2024-06-20 02:48:38 +0200
commit5593488744dc5aa994b5ab2806ed56d7bc627368 (patch)
tree9d8701474adbd0ce3d51c3f2b92e7ed5724b02a7 /build.gradle.kts
parentcb08a83e7a0f82f2459da7cb93b8c327b29d9838 (diff)
downloadModernJavaLauncher-5593488744dc5aa994b5ab2806ed56d7bc627368.tar.gz
ModernJavaLauncher-5593488744dc5aa994b5ab2806ed56d7bc627368.tar.bz2
ModernJavaLauncher-5593488744dc5aa994b5ab2806ed56d7bc627368.zip
Modernize some stuff idkHEADmaster
Diffstat (limited to 'build.gradle.kts')
-rw-r--r--build.gradle.kts134
1 files changed, 73 insertions, 61 deletions
diff --git a/build.gradle.kts b/build.gradle.kts
index 46deb21..41ea502 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -1,10 +1,10 @@
plugins {
- idea
- java
- id("gg.essential.loom") version "0.10.0.+"
- id("dev.architectury.architectury-pack200") version "0.1.3"
- id("com.github.johnrengelman.shadow") version "7.1.2"
- kotlin("jvm") version "1.9.10"
+ idea
+ java
+ id("gg.essential.loom") version "0.10.0.+"
+ id("dev.architectury.architectury-pack200") version "0.1.3"
+ id("com.github.johnrengelman.shadow") version "7.1.2"
+ kotlin("jvm") version "1.9.10"
}
group = "com.example.archloomtemplate"
@@ -12,102 +12,114 @@ version = "1.0.0"
// Toolchains:
java {
- toolchain.languageVersion.set(JavaLanguageVersion.of(8))
+ toolchain.languageVersion.set(JavaLanguageVersion.of(8))
}
val fcpEntryPoint = "moe.nea.modernjava.launch.FCPEntryPoint"
// Minecraft configuration:
loom {
- log4jConfigs.from(file("log4j2.xml"))
- launchConfigs {
- "client" {
- property("fml.coreMods.load", fcpEntryPoint)
- }
- }
- forge {
- pack200Provider.set(dev.architectury.pack200.java.Pack200Adapter())
- }
+ log4jConfigs.from(file("log4j2.xml"))
+ launchConfigs {
+ "client" {
+ property("fml.coreMods.load", fcpEntryPoint)
+ }
+ }
+ forge {
+ pack200Provider.set(dev.architectury.pack200.java.Pack200Adapter())
+ }
}
allprojects {
- repositories {
- mavenCentral()
- maven("https://jitpack.io") {
- content {
- includeGroupByRegex("(com|io)\\.github\\..+")
- }
- }
- maven("https://maven.architectury.dev/")
- maven("https://repository.ow2.org/nexus/content/repositories/releases/")
- }
+ repositories {
+ mavenCentral()
+ maven("https://jitpack.io") {
+ content {
+ includeGroupByRegex("(com|io)\\.github\\..+")
+ }
+ }
+ maven("https://maven.architectury.dev/")
+ maven("https://repository.ow2.org/nexus/content/repositories/releases/")
+ }
}
val shadowImpl: Configuration by configurations.creating {
- configurations.implementation.get().extendsFrom(this)
+ configurations.implementation.get().extendsFrom(this)
}
val agentDeps: Configuration by configurations.creating
+val reentryDeps: Configuration by configurations.creating
val shadowOnly: Configuration by configurations.creating {
- attributes {
- this.attribute(TargetJvmVersion.TARGET_JVM_VERSION_ATTRIBUTE, 16)
- }
+ attributes {
+ this.attribute(TargetJvmVersion.TARGET_JVM_VERSION_ATTRIBUTE, 16)
+ }
}
dependencies {
- minecraft("com.mojang:minecraft:1.8.9")
- mappings("de.oceanlabs.mcp:mcp_stable:22-1.8.9")
- forge("net.minecraftforge:forge:1.8.9-11.15.1.2318-1.8.9")
-
- shadowOnly("javax.annotation:javax.annotation-api:1.3.2")
- shadowImpl("com.github.Skytils:AsmHelper:91ecc2bd9c")
- shadowImpl(enforcedPlatform(kotlin("bom")))
- shadowImpl(kotlin("stdlib"))
- agentDeps(project(":agent",configuration = "agentShadow"))
+ minecraft("com.mojang:minecraft:1.8.9")
+ mappings("de.oceanlabs.mcp:mcp_stable:22-1.8.9")
+ forge("net.minecraftforge:forge:1.8.9-11.15.1.2318-1.8.9")
+
+ shadowOnly("javax.annotation:javax.annotation-api:1.3.2")
+ shadowImpl(enforcedPlatform(kotlin("bom")))
+ shadowImpl(kotlin("stdlib"))
+ agentDeps(project(":agent", configuration = "agentShadow"))
+ reentryDeps("org.ow2.asm:asm-util:9.7")
+ reentryDeps("org.ow2.asm:asm-tree:9.7")
+ reentryDeps("org.ow2.asm:asm:9.7")
+ reentryDeps("org.ow2.asm:asm-commons:9.7")
+ reentryDeps("org.ow2.asm:asm-analysis:9.7")
}
// Tasks:
-val doubleWrappedJar by tasks.creating(Zip::class) {
- archiveFileName.set("agent.jar")
- destinationDirectory.set(project.layout.buildDirectory.dir("wrapper"))
- from(agentDeps)
- into("agent")
+val doubleWrappedJarAgent by tasks.creating(Zip::class) {
+ archiveFileName.set("agent.jar")
+ destinationDirectory.set(project.layout.buildDirectory.dir("wrapper-agent"))
+ from(agentDeps)
+ into("agent")
+}
+
+val doubleWrappedJarRT by tasks.creating(Zip::class) {
+ archiveFileName.set("rt-deps.jar")
+ destinationDirectory.set(project.layout.buildDirectory.dir("wrapper-deps"))
+ from(reentryDeps)
+ into("deps")
}
tasks.withType(JavaCompile::class) {
- options.encoding = "UTF-8"
+ options.encoding = "UTF-8"
}
tasks.withType(Jar::class) {
- archiveBaseName.set("ModernJavaLauncher")
- manifest.attributes.run {
- this["FMLCorePlugin"] = fcpEntryPoint
- this["ModSide"] = "BOTH"
- this["ModType"] = "FML"
- this["FMLCorePluginContainsFMLMod"] = "true"
- this["ForceLoadAsMod"] = "true"
- }
+ archiveBaseName.set("ModernJavaLauncher")
+ manifest.attributes.run {
+ this["FMLCorePlugin"] = fcpEntryPoint
+ this["ModSide"] = "BOTH"
+ this["ModType"] = "FML"
+ this["FMLCorePluginContainsFMLMod"] = "true"
+ this["ForceLoadAsMod"] = "true"
+ }
}
val remapJar by tasks.named<net.fabricmc.loom.task.RemapJarTask>("remapJar") {
- archiveClassifier.set("")
- from(tasks.shadowJar)
- input.set(tasks.shadowJar.get().archiveFile)
+ archiveClassifier.set("")
+ from(tasks.shadowJar)
+ input.set(tasks.shadowJar.get().archiveFile)
}
tasks.jar {
- archiveClassifier.set("thin-dev")
+ archiveClassifier.set("thin-dev")
}
tasks.shadowJar {
- archiveClassifier.set("all-dev")
- relocate("dev.falsehonesty.asmhelper", "moe.nea.modernjava.dep.asmhelper")
- configurations = listOf(shadowImpl, shadowOnly)
- from(doubleWrappedJar)
+ archiveClassifier.set("all-dev")
+ configurations = listOf(shadowImpl, shadowOnly)
+ from(doubleWrappedJarRT)
+ from(doubleWrappedJarAgent)
}
tasks.assemble.get().dependsOn(tasks.remapJar)