ВСТУПЛЕНИЕ:
Хочешь научится понимать, в чем заключается ошибка? Тогда этот гайд для тебя
1: Для работы с краш-логами вы можете использовать любой текстовой редактор, но для удобного использования я советую использовать редактор с поддержкой строк кода (Пример: Visual Studio Code)
2: Нам потребуется только начало документа, в котором чередуются строки, начинающиеся на at
3: Нужно знать правило написания краш-репорта. Мы читаем строки снизу - вверх (То есть самая последняя at является самой первой.)
4: Ваши краш-логи находятся по адресу: Имя_Пользователя/AppData/Roaming/.minecraft/crash-reports
ПРИМЕР КРАШ-ЛОГА:
java.lang.NoSuchMethodError: net.minecraftforge.fluids.FluidStack.getFluid()Lnet/minecraftforge/fluids/Fluid;
at mezz.jei.plugins.vanilla.ingredients.fluid.FluidStackHelper.getErrorInfo(FluidStackHelper.java:127) ~[?:6.0.0.10] {re:classloading}
at mezz.jei.plugins.vanilla.ingredients.fluid.FluidStackHelper.getErrorInfo(FluidStackHelper.java:19) ~[?:6.0.0.10] {re:classloading}
at mezz.jei.util.ErrorUtil.getIngredientInfo(ErrorUtil.java:123) ~[?:6.0.0.10] {re:classloading}
at mezz.jei.util.ErrorUtil.getIngredientInputInfo(ErrorUtil.java:84) ~[?:6.0.0.10] {re:classloading}
at mezz.jei.util.ErrorUtil.getInfoFromRecipe(ErrorUtil.java:70) ~[?:6.0.0.10] {re:classloading}
at mezz.jei.recipes.RecipeManager.addRecipe(RecipeManager.java:140) ~[?:6.0.0.10] {re:classloading}
at mezz.jei.recipes.RecipeManager.addRecipeTyped(RecipeManager.java:93) ~[?:6.0.0.10] {re:classloading}
at mezz.jei.recipes.RecipeManager.addRecipes(RecipeManager.java:86) ~[?:6.0.0.10] {re:classloading}
at mezz.jei.recipes.RecipeManager.<init />(RecipeManager.java:78) ~[?:6.0.0.10] {re:classloading}
at mezz.jei.load.PluginLoader.getRecipeManager(PluginLoader.java:144) ~[?:6.0.0.10] {re:classloading}
at mezz.jei.startup.JeiStarter.start(JeiStarter.java:76) ~[?:6.0.0.10] {re:classloading}
at mezz.jei.startup.ClientLifecycleHandler.onRecipesLoaded(ClientLifecycleHandler.java:125) ~[?:6.0.0.10] {re:classloading}
at mezz.jei.startup.ClientLifecycleHandler.lambda$new$2(ClientLifecycleHandler.java:103) ~[?:6.0.0.10] {re:classloading}
at mezz.jei.startup.ClientLifecycleHandler$$Lambda$3560/1790345370.accept(Unknown Source) ~[?:?] {}
at net.minecraftforge.eventbus.EventBus.doCastFilter(EventBus.java:212) ~[eventbus-1.0.0-service.jar:?] {}
at net.minecraftforge.eventbus.EventBus.lambda$addListener$11(EventBus.java:204) ~[eventbus-1.0.0-service.jar:?] {}
at net.minecraftforge.eventbus.EventBus$$Lambda$1993/1082753194.invoke(Unknown Source) ~[?:?] {}
at net.minecraftforge.eventbus.EventBus.post(EventBus.java:258) ~[eventbus-1.0.0-service.jar:?] {}
at net.minecraftforge.client.ForgeHooksClient.onRecipesUpdated(ForgeHooksClient.java:1001) ~[?:?] {re:classloading}
at net.minecraft.client.network.play.ClientPlayNetHandler.func_199525_a(ClientPlayNetHandler.java:1268) ~[?:?] {re:classloading,pl:runtimedistcleaner:A}
at net.minecraft.network.play.server.SUpdateRecipesPacket.func_148833_a(SourceFile:28) ~[?:?] {re:classloading}
at net.minecraft.network.play.server.SUpdateRecipesPacket.func_148833_a(SourceFile:15) ~[?:?] {re:classloading}
at net.minecraft.network.PacketThreadUtil.lambda$checkThreadAndEnqueue$0(PacketThreadUtil.java:33) ~[?:?] {re:classloading,xf:OptiFine:default}
at net.minecraft.network.PacketThreadUtil$$Lambda$5220/1973132649.run(Unknown Source) ~[?:?] {}
at net.minecraft.util.concurrent.ThreadTaskExecutor.func_213166_h(ThreadTaskExecutor.java:170) ~[?:?] {re:classloading,pl:accesstransformer:B,xf:OptiFine:default}
at net.minecraft.util.concurrent.RecursiveEventLoop.func_213166_h(SourceFile:23) ~[?:?] {re:classloading}
at net.minecraft.util.concurrent.ThreadTaskExecutor.func_213168_p(ThreadTaskExecutor.java:135) ~[?:?] {re:classloading,pl:accesstransformer:B,xf:OptiFine:default}
at net.minecraft.util.concurrent.ThreadTaskExecutor.func_213160_bf(ThreadTaskExecutor.java:115) ~[?:?] {re:classloading,pl:accesstransformer:B,xf:OptiFine:default}
at net.minecraft.client.Minecraft.func_195542_b(Minecraft.java:861) [?:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A}
at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:384) [?:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A}
at net.minecraft.client.main.Main.main(SourceFile:155) [?:?] {re:classloading}
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_51] {}
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_51] {}
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_51] {}
at java.lang.reflect.Method.invoke(Method.java:497) ~[?:1.8.0_51] {}
at net.minecraftforge.fml.loading.FMLClientLaunchProvider.lambda$launchService$0(FMLClientLaunchProvider.java:56) [forge-1.14.4-28.1.96.jar:28.1] {}
at net.minecraftforge.fml.loading.FMLClientLaunchProvider$$Lambda$410/756637412.call(Unknown Source) [forge-1.14.4-28.1.96.jar:28.1] {}
at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:37) [modlauncher-4.1.0.jar:?] {}
at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:54) [modlauncher-4.1.0.jar:?] {}
at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:72) [modlauncher-4.1.0.jar:?] {}
at cpw.mods.modlauncher.Launcher.run(Launcher.java:81) [modlauncher-4.1.0.jar:?] {}
at cpw.mods.modlauncher.Launcher.main(Launcher.java:65) [modlauncher-4.1.0.jar:?] {}
Если вы играете с модами и игра не запускается/вылетает, то в краш-логе можно найти название конфликтного мода. В нашем случае (пример выше под спойлером) краш вызвал мод JEI, это можно понять по строчкам
at mezz.jei.
Если краш произошел в ванильном майнкрафте, то в краш-логе будет указана конкретная причина.
ЧЕГО СТОИТ ОСТЕРЕГАТЬСЯ:
Если вы не понимаете, что случилось и хотите отправить краш-лог в интернет, то не стоит копировать нижнюю часть Краш-лога, начинающуюся с: -- Affected level --
Почему? В этой части указываются все ваши данные, такие как: Настройки системы, конфигурация вашего лаунчера, ваш ник и вся информация по игровому миру. Несмотря на это там же указывается список модов, но он не важен для нахождения ошибки.
НА ЭТОМ ВСЕ!
Теперь вы знаете 90% информации, необходимой для понимания ваших краш-логов. Для полного понимания краш-лога вы должны быть продвинутым пользователем и знать все ошибки майнкрафта, что очень трудно и не играет важной роли. Спасибо за прочтение статьи.