Рейтинг темы:
  • 0 Голос(ов) - 0 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
Как запустить клиент из-под своего лаунчера? Java
#1
Пишу свой лаунчер для игры Minecraft на версии 1.7.10. Везде, где бы не читал пишут, что нужно вызывать класс MinacraftApplet для того, чтобы запустить игру через апплет. Порылся в файле 1.7.10, класса просто нет. Может, вы знаете в чём дело и как теперь запускать игру? Сразу предупрежу, что мне нужен FORGE 1.7.10. Буду благодарен за помощь. Ошибка, возникающая при попытке запустить игру:
Код:
java.lang.ClassNotFoundException: net.minecraft.client.main.MinecraftApplet
    at java.net.URLClassLoader.findClass(URLClassLoader.java:591)
    at java.lang.ClassLoader.loadClassHelper(ClassLoader.java:954)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:899)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:882)
    at reincarnciya.MCLauncher.init(MCLauncher.java:46)
    at reincarnciya.MCLauncher.init(MCLauncher.java:34)
    at reincarnciya.McStart.MCStart(McStart.java:82)
    at reincarnciya.Main.lambda$GetUpdate$2(main.java:225)
    at <unknown class>.run(Unknown Source)
    at java.lang.Thread.run(Thread.java:826)

Библиотеки, которые я загружаю для запуска игры:
Код:
URL[] urls = new URL[4];
            urls[0] = new File(bin, "Forge 1.7.10.jar").toURI().toURL();
            urls[1] = new File(bin, "lwjgl.jar").toURI().toURL();
            urls[2] = new File(bin, "jinput.jar").toURI().toURL();
            urls[3] = new File(bin, "lwjgl_util.jar").toURI().toURL();


Инициализация applet-a:
Код:
public void init(int i) {
        URLClassLoader cl = new URLClassLoader(urls);
        System.setProperty("org.lwjgl.librarypath", bin + "natives");
        System.setProperty("net.java.games.input.librarypath", bin + "natives");
        System.setProperty("fml.ignoreInvalidMinecraftCertificates", "true");
        System.setProperty("fml.ignorePatchDiscrepancies", "true");
        System.setProperty("java.library.path", bin + "natives");

        try{
            Class <?> Mine = cl.loadClass("net.minecraft.client.main.MinecraftApplet");
            Applet applet = (Applet)Mine.newInstance();
            mcApplet = applet;
            applet.setStub(this);
            applet.setSize(getWidth(), getHeight());
            setLayout(new BorderLayout());
            add(applet, "Center");
            applet.init();
            active = true;
            validate();
        }catch (Exception e){
            e.printStackTrace();
        }
    }

Так же пробовал запускать главный класс "net.minecraft.client.main.Main". Выводит ошибку:
Код:
java.lang.ClassCastException: net.minecraft.client.main.Main incompatible with java.applet.Applet
    at reincarnciya.MCLauncher.init(MCLauncher.java:47)
    at reincarnciya.MCLauncher.init(MCLauncher.java:34)
    at reincarnciya.McStart.MCStart(McStart.java:82)
    at reincarnciya.Main.lambda$GetUpdate$2(main.java:225)
    at <unknown class>.run(Unknown Source)
    at java.lang.Thread.run(Thread.java:826)
Ответ


Возможно похожие темы ...
Тема Автор Ответы Просмотры Последний пост
  Код ошибки Java HotSpot(TM) 64-Bit Server VM warning: Using incremental CMS is deprecated and will likely be removed ... 11kairat11 1 4,474 03-19-2019, 08:38 PM
Последний пост: VISTALL

Перейти к форуму:


Пользователи, просматривающие эту тему: 1 Гость(ей)