aboutsummaryrefslogtreecommitdiff
path: root/loader/build.gradle
diff options
context:
space:
mode:
Diffstat (limited to 'loader/build.gradle')
-rw-r--r--loader/build.gradle106
1 files changed, 106 insertions, 0 deletions
diff --git a/loader/build.gradle b/loader/build.gradle
new file mode 100644
index 00000000..a86269ce
--- /dev/null
+++ b/loader/build.gradle
@@ -0,0 +1,106 @@
+plugins {
+ id "idea"
+ id "java"
+ id "com.github.johnrengelman.shadow" version "7.1.2"
+ id "dev.architectury.architectury-pack200" version "0.1.3"
+ id "gg.essential.loom" version "0.10.0.+"
+}
+
+version = "4.0.0"
+group = "kr.syeyoung.dungeonsguide"
+archivesBaseName = "dungeonsguide"
+
+java {
+ toolchain.languageVersion.set(JavaLanguageVersion.of(8))
+}
+
+loom {
+ launchConfigs {
+ "client" {
+ // probably will have to my own mixin tweaker, due to dungeonsguide's weird dynamic loading stuff
+// property("mixin.debug", "true")
+// property("asmhelper.verbose", "true")
+// arg("--tweakClass", "org.spongepowered.asm.launch.MixinTweaker")
+// arg("--mixin", "mixins.examplemod.json")
+ }
+ }
+ forge {
+ pack200Provider.set(new dev.architectury.pack200.java.Pack200Adapter())
+ }
+}
+
+
+sourceSets.main {
+ output.setResourcesDir(file("$buildDir/classes/java/main"))
+}
+
+
+repositories {
+ mavenCentral()
+ maven { url "https://jitpack.io" }
+}
+
+configurations {
+ implementation.extendsFrom shadowImpl
+}
+
+
+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")
+
+ implementation "org.jetbrains:annotations-java5:19.0.0"
+ implementation "org.json:json:20171018"
+ implementation 'io.nayuki:qrcodegen:1.4.0'
+
+
+ compileOnly "org.projectlombok:lombok:1.18.20"
+ annotationProcessor "org.projectlombok:lombok:1.18.16"
+
+ testCompileOnly "org.projectlombok:lombok:1.18.20"
+ testAnnotationProcessor "org.projectlombok:lombok:1.18.20"
+
+ runtimeOnly project(":mod")
+}
+
+
+tasks.withType(JavaCompile) {
+ options.encoding = "UTF-8"
+}
+
+tasks.withType(Jar) {
+ archiveBaseName = "examplemod"
+ manifest {
+ attributes["FMLCorePluginContainsFMLMod"] = "true"
+ attributes["ForceLoadAsMod"] = "true"
+
+ // If you don't want mixins, remove these lines
+// this["TweakClass"] = "org.spongepowered.asm.launch.MixinTweaker"
+// this["MixinConfigs"] = "mixins.examplemod.json"
+ }
+}
+
+
+tasks.shadowJar {
+
+ archiveFileName = jar.archiveFileName
+
+ relocate "org.java_websocket", "kr.syeyoung.org.java_websocket"
+
+ dependencies {
+ include(dependency("org.java-websocket:Java-WebSocket:1.5.1"))
+ include(dependency("org.slf4j:slf4j-api:1.7.25"))
+ include(dependency("org.json:json:20171018"))
+ include(dependency("com.twelvemonkeys..*:.*"))
+ }
+}
+
+tasks.named("remapJar") {
+ archiveClassifier = "all"
+ from(tasks.shadowJar)
+ input = tasks.shadowJar.archiveFile
+}
+
+
+tasks.assemble.dependsOn tasks.remapJar