如果您从未玩过 Minecraft,那么这就是启动器的工作原理。
用户可以下载一个 JAR(或打包成 EXE 的 JAR),它完全没有 Minecraft 客户端的代码。这被视为启动器。当启动器启动时,它会显示一个包含新闻等的登录屏幕。然后,登录后,启动器会运行主要的 Minecraft 核心,minecraft.jar。如果系统上不存在它,它会下载它。Minecraft 启动器也不需要任何外部 Java 库即可运行。
它是如何做到的?
我目前正在尝试复制该功能,但是,当我在 Eclipse 中导出为可运行的 JAR 时,当我尝试启动它时,它会打印“找不到主类 launcher.jar。程序将退出”(这是在控制台上,我希望能够双击 JAR 并启动它)
File file = new File(System.getProperty("user.dir") + "/lessur.jar");
System.setProperty("org.lwjgl.librarypath", System.getProperty("user.dir") + "natives");
URLClassLoader classLoader;
classLoader = URLClassLoader.newInstance(new URL[]{file.toURI().toURL()});
classLoader.loadClass("zombie.engine.Lighting2").newInstance();