From a4a122e11e78c53d43d539ef7ca71b0e47ae3bc6 Mon Sep 17 00:00:00 2001 From: simon816 Date: Sat, 5 Aug 2017 19:09:28 +0100 Subject: [PATCH] Fix startup error with recent forge versions. Support Minecraft 1.12.1 Fixes #8 and fixes #9 --- build.gradle | 24 +++++++++++++------ .../simon816/sponge/bootstrap/Bootstrap.java | 8 ++++++- 2 files changed, 24 insertions(+), 8 deletions(-) diff --git a/build.gradle b/build.gradle index b93e679..e383143 100644 --- a/build.gradle +++ b/build.gradle @@ -4,7 +4,7 @@ apply plugin: 'eclipse' sourceCompatibility = '1.6' targetCompatibility = '1.6' -version = '0.4.0' +version = '0.5.0' repositories { mavenCentral() @@ -26,17 +26,27 @@ dependencies { compile files('C:/Users/Simon/.gradle/caches/minecraft/net/minecraftforge/forge/1.11.2-13.20.0.2227/start') } +project.ext.supportedVersions = ["1.8.9", "1.10.2", "1.11", "1.11.2", "1.12", "1.12.1"] + +task setSupportedVersions(type: Copy) { + from(sourceSets.main.java.srcDirs) + into 'build/sources/java' + filter(org.apache.tools.ant.filters.ReplaceTokens, + tokens: ['supportedVersions': project.ext.supportedVersions.join(",")]) +} + +compileJava.source = setSupportedVersions.outputs.files +compileJava.dependsOn setSupportedVersions + + jar { manifest { attributes( "Main-Class": "com.simon816.sponge.bootstrap.Bootstrap", "Class-Path": "libraries/net/minecraft/launchwrapper/1.12/launchwrapper-1.12.jar" - + " libraries/net/sf/jopt-simple/jopt-simple/4.6/jopt-simple-4.6.jar" - + " minecraft_server.1.8.9.jar" - + " minecraft_server.1.10.2.jar" - + " minecraft_server.1.11.jar" - + " minecraft_server.1.11.2.jar" - + " minecraft_server.1.12.jar" + + " libraries/net/sf/jopt-simple/jopt-simple/5.0.3/jopt-simple-5.0.3.jar" + + " libraries/net/sf/jopt-simple/jopt-simple/4.6/jopt-simple-4.6.jar " + + project.ext.supportedVersions.collect{ "minecraft_server.${it}.jar" }.join(" ") ) } } diff --git a/src/main/java/com/simon816/sponge/bootstrap/Bootstrap.java b/src/main/java/com/simon816/sponge/bootstrap/Bootstrap.java index e97d66a..5bcfa5d 100644 --- a/src/main/java/com/simon816/sponge/bootstrap/Bootstrap.java +++ b/src/main/java/com/simon816/sponge/bootstrap/Bootstrap.java @@ -98,7 +98,13 @@ public boolean accept(File pathname) { } static boolean supportedVersion(String fn) { - return fn.contains("1.8.9") || fn.contains("1.10.2") || fn.contains("1.11") || fn.contains("1.12"); + // Replaced by gradle (see build.gradle) + for (String supported : "@supportedVersions@".split(",")) { + if (fn.contains(supported)) { + return true; + } + } + return false; } private static File findJar(File directory, String jarName, FileFilter filter) {