diff --git a/src/de/deadlocker8/budgetmasterserver/main/Main.java b/src/de/deadlocker8/budgetmasterserver/main/Main.java index a010832b59e78d71fd90618b0341188457604e30..a5b8df53e639aeb9de9f521d0ada86bd56d114df 100644 --- a/src/de/deadlocker8/budgetmasterserver/main/Main.java +++ b/src/de/deadlocker8/budgetmasterserver/main/Main.java @@ -4,6 +4,7 @@ import java.io.File; import java.io.IOException; import java.net.URISyntaxException; import java.nio.file.Files; +import java.nio.file.Path; import java.nio.file.Paths; import java.util.Locale; import java.util.ResourceBundle; @@ -28,29 +29,39 @@ public class Main catch(URISyntaxException e1) { Logger.error(e1); - } + } - if(!Files.exists(Paths.get("settings.json"))) + try { + Path settingsPath = Paths.get(Settings.class.getProtectionDomain().getCodeSource().getLocation().toURI()).resolve("settings.json"); + + if(!Files.exists(settingsPath)) + { + try + { + Files.copy(SparkServer.class.getClassLoader().getResourceAsStream("de/deadlocker8/budgetmasterserver/resources/settings.json"), settingsPath); + } + catch(IOException e) + { + Logger.error(e); + } + } + + Settings settings; try { - Files.copy(SparkServer.class.getClassLoader().getResourceAsStream("de/deadlocker8/budgetmasterserver/resources/settings.json"), Paths.get("settings.json")); + settings = Utils.loadSettings(); + new SparkServer(settings); } - catch(IOException e) + catch(IOException | URISyntaxException e) { Logger.error(e); } } - - Settings settings; - try - { - settings = Utils.loadSettings(); - new SparkServer(settings); - } - catch(IOException | URISyntaxException e) - { - Logger.error(e); + catch(URISyntaxException e1) + { + Logger.error(e1); } + } }