C++ Вопрос JNI не запускает майнкрафт после ошибки логгера (log4j)

Пользователь
Статус
Оффлайн
Регистрация
22 Авг 2022
Сообщения
298
Реакции[?]
44
Поинты[?]
34K
C++:
 end
ERROR StatusLogger No log4j2 configuration file found. Using default configuration: logging only errors to the console. Set system property 'org.apache.logging.log4j.simplelog.StatusLogger.level' to TRACE to show Log4j2 internal initialization logging.
Completely ignored arguments: []
22:19:37.085 [Client thread] ERROR net.minecraft.client.resources.ResourceIndex - Can't find the resource index file: assets\indexes\1.12.json
  called
Вот что выводится в консоль.
end выводится после загрузки всех классов из classes.h в SystemClassLoader
called выводится после вызова статичного main метода в Start классе
Ошибка заключается в том что нихуя не запускается майн после этой ошибки с log4j

Мой код:
C++:
print("end");

jclass startClass = env ->FindClass("Start");
jmethodID mainMethod = env ->GetStaticMethodID(startClass, "main", "([Ljava/lang/String;)V");
jobjectArray emptyArgsArray = env ->NewObjectArray(1, env ->FindClass("java/lang/String"), env ->NewStringUTF(""));
env ->SetObjectArrayElement(emptyArgsArray, 0, env ->NewStringUTF(""));

env ->CallStaticVoidMethod(startClass, mainMethod, emptyArgsArray);
print("called");
Мб кто-то шарит
 
Начинающий
Статус
Оффлайн
Регистрация
28 Июл 2021
Сообщения
300
Реакции[?]
16
Поинты[?]
0
C++:
 end
ERROR StatusLogger No log4j2 configuration file found. Using default configuration: logging only errors to the console. Set system property 'org.apache.logging.log4j.simplelog.StatusLogger.level' to TRACE to show Log4j2 internal initialization logging.
Completely ignored arguments: []
22:19:37.085 [Client thread] ERROR net.minecraft.client.resources.ResourceIndex - Can't find the resource index file: assets\indexes\1.12.json
  called
Вот что выводится в консоль.
end выводится после загрузки всех классов из classes.h в SystemClassLoader
called выводится после вызова статичного main метода в Start классе
Ошибка заключается в том что нихуя не запускается майн после этой ошибки с log4j

Мой код:
C++:
print("end");

jclass startClass = env ->FindClass("Start");
jmethodID mainMethod = env ->GetStaticMethodID(startClass, "main", "([Ljava/lang/String;)V");
jobjectArray emptyArgsArray = env ->NewObjectArray(1, env ->FindClass("java/lang/String"), env ->NewStringUTF(""));
env ->SetObjectArrayElement(emptyArgsArray, 0, env ->NewStringUTF(""));

env ->CallStaticVoidMethod(startClass, mainMethod, emptyArgsArray);
print("called");
Мб кто-то шарит
1667071466828.png
проверь точно ли есть этот файл в джарке которую ты юзаешь.
или ты просто ассеты не грузишь
 
Пользователь
Статус
Оффлайн
Регистрация
22 Авг 2022
Сообщения
298
Реакции[?]
44
Поинты[?]
34K
Начинающий
Статус
Оффлайн
Регистрация
28 Июл 2021
Сообщения
300
Реакции[?]
16
Поинты[?]
0
Если чё, файл assets\indexes\1.12.json существует
он не влияет никак на запуск, это просто звуки.
их в -Djava.library.path засунуть? чёт я уже совсем того
-
-Djava.library.path это то откуда у тебя будет System.loadLibrary() дллки нативные грузить
 
Пользователь
Статус
Оффлайн
Регистрация
22 Авг 2022
Сообщения
298
Реакции[?]
44
Поинты[?]
34K
Посмотреть вложение 226032
проверь точно ли есть этот файл в джарке которую ты юзаешь.
или ты просто ассеты не грузишь
да, такой файл есть
Теперь срёт вот это:
C++:
2022-10-29 22:29:57,543 main ERROR Unable to inject fields into builder class for plugin type class org.apache.logging.log4j.core.appender.ConsoleAppender, element Console. java.nio.charset.UnsupportedCharsetException: cp65001
        at java.nio.charset.Charset.forName(Charset.java:531)
        at org.apache.logging.log4j.util.PropertiesUtil.getCharsetProperty(PropertiesUtil.java:146)
        at org.apache.logging.log4j.util.PropertiesUtil.getCharsetProperty(PropertiesUtil.java:134)
        at org.apache.logging.log4j.core.appender.ConsoleAppender$Target.getCharset(ConsoleAppender.java:85)
        at org.apache.logging.log4j.core.appender.ConsoleAppender$Target$1.getDefaultCharset(ConsoleAppender.java:71)
        at org.apache.logging.log4j.core.appender.ConsoleAppender$Builder.build(ConsoleAppender.java:218)
        at org.apache.logging.log4j.core.appender.ConsoleAppender$Builder.build(ConsoleAppender.java:185)
        at org.apache.logging.log4j.core.config.plugins.util.PluginBuilder.build(PluginBuilder.java:122)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.createPluginObject(AbstractConfiguration.java:952)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:892)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:884)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.doConfigure(AbstractConfiguration.java:508)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.initialize(AbstractConfiguration.java:232)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.start(AbstractConfiguration.java:244)
        at org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:545)
        at org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:617)
        at org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:634)
        at org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:229)
        at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:152)
        at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:45)
        at org.apache.logging.log4j.LogManager.getContext(LogManager.java:194)
        at org.apache.logging.log4j.LogManager.getLogger(LogManager.java:551)
        at org.apache.logging.log4j.LogManager.getLogger(LogManager.java:537)
        at net.minecraft.client.Minecraft.<clinit>(Minecraft.java:225)
        at net.minecraft.client.main.Main.main(Main.java:39)
        at Start.startMinecraft(Start.java:12)
        at Start.main(Start.java:8)

2022-10-29 22:29:57,547 main ERROR Unable to invoke factory method in class class org.apache.logging.log4j.core.appender.ConsoleAppender for element Console. java.lang.IllegalStateException: No factory method found for class org.apache.logging.log4j.core.appender.ConsoleAppender
        at org.apache.logging.log4j.core.config.plugins.util.PluginBuilder.findFactoryMethod(PluginBuilder.java:224)
        at org.apache.logging.log4j.core.config.plugins.util.PluginBuilder.build(PluginBuilder.java:130)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.createPluginObject(AbstractConfiguration.java:952)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:892)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:884)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.doConfigure(AbstractConfiguration.java:508)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.initialize(AbstractConfiguration.java:232)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.start(AbstractConfiguration.java:244)
        at org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:545)
        at org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:617)
        at org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:634)
        at org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:229)
        at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:152)
        at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:45)
        at org.apache.logging.log4j.LogManager.getContext(LogManager.java:194)
        at org.apache.logging.log4j.LogManager.getLogger(LogManager.java:551)
        at org.apache.logging.log4j.LogManager.getLogger(LogManager.java:537)
        at net.minecraft.client.Minecraft.<clinit>(Minecraft.java:225)
        at net.minecraft.client.main.Main.main(Main.java:39)
        at Start.startMinecraft(Start.java:12)
        at Start.main(Start.java:8)

2022-10-29 22:29:57,552 main ERROR Null object returned for Console in Appenders.
2022-10-29 22:29:57,557 main ERROR Unable to locate appender "SysOut" for logger config "root"
2022-10-29 22:29:57,557 main ERROR Unable to locate appender "File" for logger config "root"
Completely ignored arguments: []
он не влияет никак на запуск, это просто звуки.

-
-Djava.library.path это то откуда у тебя будет System.loadLibrary() дллки нативные грузить
А да, в -Djava.class.path=
 
Начинающий
Статус
Оффлайн
Регистрация
28 Июл 2021
Сообщения
300
Реакции[?]
16
Поинты[?]
0
да, такой файл есть
Теперь срёт вот это:
C++:
2022-10-29 22:29:57,543 main ERROR Unable to inject fields into builder class for plugin type class org.apache.logging.log4j.core.appender.ConsoleAppender, element Console. java.nio.charset.UnsupportedCharsetException: cp65001
        at java.nio.charset.Charset.forName(Charset.java:531)
        at org.apache.logging.log4j.util.PropertiesUtil.getCharsetProperty(PropertiesUtil.java:146)
        at org.apache.logging.log4j.util.PropertiesUtil.getCharsetProperty(PropertiesUtil.java:134)
        at org.apache.logging.log4j.core.appender.ConsoleAppender$Target.getCharset(ConsoleAppender.java:85)
        at org.apache.logging.log4j.core.appender.ConsoleAppender$Target$1.getDefaultCharset(ConsoleAppender.java:71)
        at org.apache.logging.log4j.core.appender.ConsoleAppender$Builder.build(ConsoleAppender.java:218)
        at org.apache.logging.log4j.core.appender.ConsoleAppender$Builder.build(ConsoleAppender.java:185)
        at org.apache.logging.log4j.core.config.plugins.util.PluginBuilder.build(PluginBuilder.java:122)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.createPluginObject(AbstractConfiguration.java:952)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:892)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:884)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.doConfigure(AbstractConfiguration.java:508)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.initialize(AbstractConfiguration.java:232)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.start(AbstractConfiguration.java:244)
        at org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:545)
        at org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:617)
        at org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:634)
        at org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:229)
        at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:152)
        at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:45)
        at org.apache.logging.log4j.LogManager.getContext(LogManager.java:194)
        at org.apache.logging.log4j.LogManager.getLogger(LogManager.java:551)
        at org.apache.logging.log4j.LogManager.getLogger(LogManager.java:537)
        at net.minecraft.client.Minecraft.<clinit>(Minecraft.java:225)
        at net.minecraft.client.main.Main.main(Main.java:39)
        at Start.startMinecraft(Start.java:12)
        at Start.main(Start.java:8)

2022-10-29 22:29:57,547 main ERROR Unable to invoke factory method in class class org.apache.logging.log4j.core.appender.ConsoleAppender for element Console. java.lang.IllegalStateException: No factory method found for class org.apache.logging.log4j.core.appender.ConsoleAppender
        at org.apache.logging.log4j.core.config.plugins.util.PluginBuilder.findFactoryMethod(PluginBuilder.java:224)
        at org.apache.logging.log4j.core.config.plugins.util.PluginBuilder.build(PluginBuilder.java:130)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.createPluginObject(AbstractConfiguration.java:952)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:892)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:884)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.doConfigure(AbstractConfiguration.java:508)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.initialize(AbstractConfiguration.java:232)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.start(AbstractConfiguration.java:244)
        at org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:545)
        at org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:617)
        at org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:634)
        at org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:229)
        at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:152)
        at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:45)
        at org.apache.logging.log4j.LogManager.getContext(LogManager.java:194)
        at org.apache.logging.log4j.LogManager.getLogger(LogManager.java:551)
        at org.apache.logging.log4j.LogManager.getLogger(LogManager.java:537)
        at net.minecraft.client.Minecraft.<clinit>(Minecraft.java:225)
        at net.minecraft.client.main.Main.main(Main.java:39)
        at Start.startMinecraft(Start.java:12)
        at Start.main(Start.java:8)

2022-10-29 22:29:57,552 main ERROR Null object returned for Console in Appenders.
2022-10-29 22:29:57,557 main ERROR Unable to locate appender "SysOut" for logger config "root"
2022-10-29 22:29:57,557 main ERROR Unable to locate appender "File" for logger config "root"
Completely ignored arguments: []
А да, в -Djava.class.path=
либки не грузит
 
Пользователь
Статус
Оффлайн
Регистрация
22 Авг 2022
Сообщения
298
Реакции[?]
44
Поинты[?]
34K
либки не грузит
бл, а хули?
C++:
JavaVMOption options[4];
    string libraries = "-Djava.class.path="+collectedLibs;
    char* class_path = &libraries[0u];
    string natives = "-Djava.library.path="+nativesFolder;
    char* natives_path = &natives[0u];
    string nolog4j = "-Dlog4j.configuration=";
    char* nolog4j_param = &nolog4j[0u];
    string memory = "-Xmx3G";
    char* memory_param = &memory[0u];

    options[0].optionString = class_path;
    options[1].optionString = natives_path;
    options[2].optionString = memory_param;
    options[3].optionString = nolog4j_param;

    JavaVMInitArgs initArgs;
    initArgs.options = options;
    initArgs.nOptions = 4;
    initArgs.ignoreUnrecognized = FALSE;
    initArgs.version = JNI_VERSION_1_8;
 
Начинающий
Статус
Оффлайн
Регистрация
28 Июл 2021
Сообщения
300
Реакции[?]
16
Поинты[?]
0
бл, а хули?
C++:
JavaVMOption options[4];
    string libraries = "-Djava.class.path="+collectedLibs;
    char* class_path = &libraries[0u];
    string natives = "-Djava.library.path="+nativesFolder;
    char* natives_path = &natives[0u];
    string nolog4j = "-Dlog4j.configuration=";
    char* nolog4j_param = &nolog4j[0u];
    string memory = "-Xmx3G";
    char* memory_param = &memory[0u];

    options[0].optionString = class_path;
    options[1].optionString = natives_path;
    options[2].optionString = memory_param;
    options[3].optionString = nolog4j_param;

    JavaVMInitArgs initArgs;
    initArgs.options = options;
    initArgs.nOptions = 4;
    initArgs.ignoreUnrecognized = FALSE;
    initArgs.version = JNI_VERSION_1_8;
дефайни классы через jnienv->DefineClass()
 
Пользователь
Статус
Оффлайн
Регистрация
22 Авг 2022
Сообщения
298
Реакции[?]
44
Поинты[?]
34K
кароче почти получилось

C++:
end
2022-10-30 00:02:48,590 main ERROR Unable to locate appender "File" for logger config "root"
Completely ignored arguments: []
[00:02:48] [Client thread/ERROR]: Can't find the resource index file: assets\indexes\1.12.json
[00:02:48] [Client thread/INFO]: Environment: ElyEnvironment[name=ely,authHost=https://authserver.ely.by/auth,accountsHost=https://account.ely.by/api/mojang,sessionHost=https://account.ely.by/api/minecraft/session,servicesHost=<null>]
[00:02:48] [Client thread/INFO]: Setting user: Player236
[00:02:49] [Client thread/INFO]: [OptiFine] *** Reflector Forge ***
  called
После этого пишет called то есть дальше не идёт походу. Майн не запускается
 
Начинающий
Статус
Оффлайн
Регистрация
28 Июл 2021
Сообщения
300
Реакции[?]
16
Поинты[?]
0
кароче почти получилось

C++:
end
2022-10-30 00:02:48,590 main ERROR Unable to locate appender "File" for logger config "root"
Completely ignored arguments: []
[00:02:48] [Client thread/ERROR]: Can't find the resource index file: assets\indexes\1.12.json
[00:02:48] [Client thread/INFO]: Environment: ElyEnvironment[name=ely,authHost=https://authserver.ely.by/auth,accountsHost=https://account.ely.by/api/mojang,sessionHost=https://account.ely.by/api/minecraft/session,servicesHost=<null>]
[00:02:48] [Client thread/INFO]: Setting user: Player236
[00:02:49] [Client thread/INFO]: [OptiFine] *** Reflector Forge ***
  called
После этого пишет called то есть дальше не идёт походу. Майн не запускается
1667077487999.png
аргументы майну тоже добавь, они тоже влияют
 
Пользователь
Статус
Оффлайн
Регистрация
22 Авг 2022
Сообщения
298
Реакции[?]
44
Поинты[?]
34K
дефайни классы через jnienv->DefineClass()
я так и делаю

Для просмотра содержимого вам необходимо авторизоваться.

Посмотреть вложение 226040
аргументы майну тоже добавь, они тоже влияют
также как и с остальными я делал?
 
Пользователь
Статус
Оффлайн
Регистрация
22 Авг 2022
Сообщения
298
Реакции[?]
44
Поинты[?]
34K
Добавил аргументы через джаву как в экспенсиве, всё равно нихуя
 
Начинающий
Статус
Оффлайн
Регистрация
28 Июл 2021
Сообщения
300
Реакции[?]
16
Поинты[?]
0
я так и делаю

Скрытое содержимое

также как и с остальными я делал?
на самом деле я б на твоем месте сделал как у всех нормальных людей, загрузку launcher.jar в котором еще нету ассетов, а вот из него уже дефайнит все классы и ассеты.
это делается за час максимум.
 
Пользователь
Статус
Оффлайн
Регистрация
22 Авг 2022
Сообщения
298
Реакции[?]
44
Поинты[?]
34K
на самом деле я б на твоем месте сделал как у всех нормальных людей, загрузку launcher.jar в котором еще нету ассетов, а вот из него уже дефайнит все классы и ассеты.
это делается за час максимум.
так у меня также, не? у меня в classes.h только классы чита, всё остальное в launcher.jar который в либках
 
Пользователь
Статус
Оффлайн
Регистрация
22 Авг 2022
Сообщения
298
Реакции[?]
44
Поинты[?]
34K
Кароче что-то я подправил и у меня запускается майн. Всё идеально, но не работает загрузка классов по байтам. Я это понял по крашу, в краше NPE в том месте где класс с клиента
Для просмотра содержимого вам необходимо авторизоваться.
 
Забаненный
Статус
Оффлайн
Регистрация
2 Фев 2021
Сообщения
453
Реакции[?]
82
Поинты[?]
3K
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
C++:
 end
ERROR StatusLogger No log4j2 configuration file found. Using default configuration: logging only errors to the console. Set system property 'org.apache.logging.log4j.simplelog.StatusLogger.level' to TRACE to show Log4j2 internal initialization logging.
Completely ignored arguments: []
22:19:37.085 [Client thread] ERROR net.minecraft.client.resources.ResourceIndex - Can't find the resource index file: assets\indexes\1.12.json
  called
Вот что выводится в консоль.
end выводится после загрузки всех классов из classes.h в SystemClassLoader
called выводится после вызова статичного main метода в Start классе
Ошибка заключается в том что нихуя не запускается майн после этой ошибки с log4j

Мой код:
C++:
print("end");

jclass startClass = env ->FindClass("Start");
jmethodID mainMethod = env ->GetStaticMethodID(startClass, "main", "([Ljava/lang/String;)V");
jobjectArray emptyArgsArray = env ->NewObjectArray(1, env ->FindClass("java/lang/String"), env ->NewStringUTF(""));
env ->SetObjectArrayElement(emptyArgsArray, 0, env ->NewStringUTF(""));

env ->CallStaticVoidMethod(startClass, mainMethod, emptyArgsArray);
print("called");
Мб кто-то шарит
ассеты в класс патч задавай, как я понял нету файла 1667127090501.png
Кароче что-то я подправил и у меня запускается майн. Всё идеально, но не работает загрузка классов по байтам. Я это понял по крашу, в краше NPE в том месте где класс с клиента
Скрытое содержимое
мне скинь хайд, можем в дискорд пойти kshk#2071
 
Пользователь
Статус
Оффлайн
Регистрация
22 Авг 2022
Сообщения
298
Реакции[?]
44
Поинты[?]
34K
ассеты в класс патч задавай, как я понял нету файла Посмотреть вложение 226098

мне скинь хайд, можем в дискорд пойти kshk#2071
Кинул заявку
Для просмотра содержимого вам необходимо авторизоваться.


Хайд:
Для просмотра содержимого вам необходимо авторизоваться.
 
Сверху Снизу