Makes the software build Spigot and CraftBukkit jars if the latest version is chosen

This commit is contained in:
2021-08-02 21:50:12 +02:00
parent f1eead3807
commit 0018816d90
3 changed files with 43 additions and 6 deletions

View File

@ -1,5 +1,10 @@
package net.knarcraft.minecraftserverlauncher.server.servertypes;
import net.knarcraft.minecraftserverlauncher.Main;
import net.knarcraft.minecraftserverlauncher.profile.ServerLauncherController;
import net.knarcraft.minecraftserverlauncher.userinterface.GUI;
import net.knarcraft.minecraftserverlauncher.utility.JarBuilder;
import java.io.File;
import java.nio.file.Paths;
@ -31,7 +36,31 @@ public class CraftBukkit extends AbstractServerType {
String targetFile = this.getName() + version + ".jar";
String file = downloadURLPart + version + ".jar";
File filePath = new File(folder + targetFile);
return filePath.isFile() || downloadFile(downloadURL + file, Paths.get(filePath.toURI()));
if (version.equals("Latest")) {
return filePath.isFile() || buildJar(folder);
} else {
return filePath.isFile() || downloadFile(downloadURL + file, Paths.get(filePath.toURI()));
}
}
/**
* Builds the necessary .jar file
*
* @param folder <p>The folder the build file should be moved to</p>
* @return <p>True if the build was successful</p>
*/
private boolean buildJar(String folder) {
String buildToolsDirectory = Main.getApplicationWorkDirectory() + File.separator + "files" + File.separator +
"BuildTools" + File.separator;
GUI gui = ServerLauncherController.getInstance().getGUI();
JarBuilder jarBuilder = new JarBuilder(buildToolsDirectory, folder, gui);
if (this instanceof Spigot) {
return jarBuilder.buildSpigotJar();
} else {
return jarBuilder.buildBukkitJar();
}
}
}