diff --git a/core/src/main/java/mc/core/Main.java b/core/src/main/java/mc/core/Main.java index 3b0f3bb..3aa43c9 100644 --- a/core/src/main/java/mc/core/Main.java +++ b/core/src/main/java/mc/core/Main.java @@ -9,11 +9,25 @@ import mc.core.network.Server; import mc.core.network.StartServerException; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; +import org.springframework.context.support.FileSystemXmlApplicationContext; + +import java.nio.file.Files; +import java.nio.file.Paths; @Slf4j public class Main { + private static ApplicationContext createContext() { + final String springXml = System.getProperty("springConfig", "./spring.xml"); + + if (Files.exists(Paths.get(springXml))) { + return new FileSystemXmlApplicationContext(springXml); + } else { + return new ClassPathXmlApplicationContext("spring.xml"); + } + } + public static void main(String[] args) { - ApplicationContext appContext = new ClassPathXmlApplicationContext("spring.xml"); + ApplicationContext appContext = createContext(); GameLoop gameLoop = appContext.getBean(GameLoop.class); gameLoop.start();