How to solve an MC error-report

Dieses Thema im Forum "Tutorials" wurde erstellt von TeyKey1, 24. Oktober 2014.

  1. TeyKey1
    Offline

    TeyKey1

    Registriert seit:
    10. Juni 2013
    Beiträge:
    74
    Ort:
    Internet
    Minecraft:
    TeyKey1
    Hallihallöchen.


    Intro:

    Erstmals, um eines klarzustellen:
    - Ihr solltet grundlegende Englischkenntnisse verfügen (darum ist der Titel auf englisch :D)
    - Ihr solltet die Suchmaschine Google verwenden können (Einige werden jetzt lachen, aber es gibt einige Leute, welche das noch nicht können. Bin halt in der Internet-Generation aufgewachsen ;) )
    - Euren PC einigermassen im Griff haben (Hier nehme ich immer gerne das folgende Zitat: "Der PC rechnet mit allem, nur nicht mit seinem Benutzer.")

    Ausserdem:
    Bin ich ganz und gar nicht schuld, wenn ihr einen Error-Log nicht wegkriegt, denn in den allermeisten Fällen seid ihr selber am Error schuld.
    Und wenn ihr es nicht seid, sind es die Programmierer.
    Und der PC ist nie schuld, denn der kann rechnen. Das Problem ist, dass man ihm alles, was er rechnen soll exakt so hinstellen soll, wie er will. Dann wären wir wieder bei den Programmierern und Usern...


    Ihr seht, das Ganze ist nicht gerade einfach mit dem PC und den Programmierern und Usern. Aber einer ist garantiert nicht schuld: Der Computer.


    Wohin ist denn der Error-report verschwunden?

    Ok. Das erste was ihr machen müsst scheint nicht sehr schwer zu sein: Den Error-report überhaupt zu finden.

    Manchmal bekommt ihr den gleich direkt ausgespuckt, wie hier:
    [​IMG]

    Oder ihr seht sowas, oder ähnliches:
    [​IMG]

    Nun, besonders im 2ten Fall ist es ratsam sich den Error-report auf andere Weise zu beschaffen:

    1. Geht zu eurem ".Minecraft" Ordner:
    entweder folgt ihr diesem Pfad:
    C:\Users\EUER USERNAME\AppData\Roaming\.minecraft

    oder ihr führt die folgende Zeile aus:
    %appdata%
    Hier seht ihr wie das geht:

    Wenn ihr im ".Minecraft" Ordner seid müsst ihr den Ordner "crash-reports" suchen, und öffnen.

    Dort werdet ihr (sehr Wahrscheinlich“) einen Haufen von TXT Dateien finden

    [​IMG]

    Diese TXT Dateien könnt ihr mit dem Windows Texteditor ganz einfach öffnen.

    Ich empfehle dennoch dieses kostenlose aber extrem tolle Programm Notepad++:


    Sucht euch also die neueste TXT Datei, und öffnet diese. Nun habt ihr den blanken Error-report vor euch:

    [​IMG]



    Error-report gefunden, wie weiter?

    Nun heisst es: Geduld, Geduld und nochmals Geduld.

    Nun werdet ihr etwas abgemildert das Schicksal aller Programmierer miterleben, und ich Zitiere wieder:

    „Und Fehlersuche- so Traurig es klingt- ist eine der Arbeiten, mit denen Programmierer deutlich mehr Zeit verbringen als mit ihren Freundinnen.“-Uwe Post

    Fangen wir am Anfang an:
    [​IMG]
    Nun ich werde den Error-report der Übersicht halber etwas bemalen, und in der jeweiligen Farbe schreiben.

    Nun, diesen Teil kann man ignorieren, da er keine Informationen enthält.

    Hier wird's schon interessanter. Ich sehe den Zeitpunkt, an welchem der Error aufgetaucht ist, sowie die Beschreibung, bei welchem Schritt das Game gecrasht ist. Da uns die "Description" Linie sagt, dass es beim initialisieren des Spiels passiert ist, gehe ich davon aus, dass das Spiel bereits während des Starts gecrasht ist.

    Nun kommen wir zum nahezu wichtigsten Element des Error-reports: In dieser Zeile wird nähmlich gesagt, um welchen Error es sich bei Java handelt, und in welchem Verzeichniss (Ordner) der Error auftaucht. Hier heraus kann ich beispielsweise herauslesen, dass das Ganze mit dem Forge Modloader zu tun hat, da der Error-Pfad offensichtlich das Kürzel "fml" enthält. Ausserdem führt der Pfad zu einem gewissen "ICraftingHandler".

    Nun ist Googeln gefragt, denn auch ich weiss keine Java-Error-Bezeichnungen auswendig ;)
    Ausserdem gilt es jetzt herauszufinden, was der "ICraftingHandler" mit dem Forge Modloader, sowie dem Java Error zu tun hat.

    Nun Ist es zudem wichtig, dass man englisch kann, denn die meisten Seiten werden auf englisch sein...

    Zu der Java-Error-Bezeichnung hab ich folgendes gefunden:
    Suchwort: "Java lang no class def found error"

    Zitat (http://javarevisited.blogspot.ch/2011/06/noclassdeffounderror-exception-in.html):"In short NoClassDefFoundError will come if a class was present during compile time but not available in java classpath during runtime."

    Weiter mit Forge und dem "ICraftingHandler":
    Suchwort: "Forge ICraftingHandler"
    Ergebniss: http://www.minecraftforge.net/forum/index.php?topic=1513.0

    Nun kommt das Problem: Um diesen Post einigermassen zu verstehen müsst ihr neben Englischkenntnissen auch noch wenige Programmierkenntnisse haben.
    In diesem Fall interessiert mich das Problem der Person im Post nicht, sondern eher für was die Klasse "ICraftingHandler" gut ist.
    In dem Codeschnipsel, oder ganz einfach am Namen erkenne ich, dass diese Klasse den Craftingvorgang überwacht/möglich macht.



    Schauen wir uns die Mitte an:
    [​IMG]

    Nun, das Ganze sieht vielleicht nach viel Text aus. sagt aber alles etwa das Gleiche aus. Es empfiehlt sich dennoch alles durchzulesen, da man dadurch manchmal die Mod gleich finden kann, welche hinter unserem ganzen Problem steckt.

    Es wird nun jede Klasse aufgezählt, welche vom Error betroffen sind, und bei einer API wie Forge können das ganz viele sein, wie ihr seht.
    nach jedem "at" wird der Pfad zur Klasse angezeigt in Klammern nochmals die Klasse, und die Zeilennummer, welche den Error verursacht.

    Der blaue Teil bestätigt unser obiges Zitat der Beschreibung der Java-Error-Bezeichnung. Denn auch hier wird bei den 3 "at" Linien eine Klasse nicht gefunden, welche dadurch offensichtlich einen Error auslöst.

    ...Und dabei logischerweise auch gleich eine "NullPointerException" auslöst, da die Klasse ja 0 ist, weil sie nicht gefunden wurde.



    Kommen wir zum Schluss des Error-reports:
    [​IMG]

    Hier müssen wir einen Teil des Error-reports überspringen, da im Grunde genommen nochmals das Gleiche wie vorher durchgegangen wird, einfach detaillierter.

    Wenn wir bei den System Details sind, können wir noch einiges anschauen.

    In diesem Teil sehen wir die MC-Version sowie die Java Version und deren Attribute. Hier kann ich sehen, dass ich Java 64bit auf meinem 64bit Rechner installiert habe. Es sollte also mit Java alles stimmen.

    Hier sehen wir, welche Mods von Forge geladen wurden, bzw. aktiv sind. Logischerweise ist der Campingmod noch nicht aktiv, da MC beim Start ja gecrasht ist. Deshalb fokussiere ich eher auf Forge. Es ist dennoch empfehlenswert Mod nach Mod aus dem Verkehr zu ziehen und nochmals zu starten. Denn es ist am wahrscheinlichsten, dass es an einem Mod liegt.


    Error beheben:

    Nun haben wir den Error-report analysiert, und können auch danach handeln.

    Wir wissen:
    - Zusammenhang mit Crafting
    - Klasse konnte nicht gefunden werden (vielleicht eine Mod?)
    -Camping Mod fügt einige Craftingelemente hinzu


    Es kann also sein, dass irgendetwas mit dem Camping Mod nicht stimmt. Entweder falsche Version der Mod (unkompatibilität), oder einen bug.
    Eine falsche Version ist häufiger anzutreffen. Deshalb entferne ich die Mod, und versuche es erneut. sollte dies nicht funktionieren liegt es an Forge.

    - Forge neuinstallieren
    - Ältere Version von Forge auf älterer MC version testen
    - Googeln, googeln, googeln...
    - Fragen in Foren stellen



    Outro:

    Ich hoffe ich konnte einigen von euch helfen.
    Konstruktive Kritik ist natürlich erwünscht :)

    Mfg. TeyKey
     
    #1