Eine Programmbibliothek (engl. library) ist eine Sammlung von Programmfunktionen, die vom Rest des Programmes benutzt werden können.
Speicherort[]
Minecraft benutzt eine Vielzahl von Programmbibliotheken. Sie sind unter .minecraft/libraries zu finden:
- .minecraft
- libraries: Programmbibliotheken mit Funktionen, die von Minecraft genutzt werden.
- com
- google: Google Gson dient zur Umwandlung von Java-Objekten in JSON. Google Guava stellt zusätzliche Java-Funktionen zur Verfügung.
- ibm: ICU der Firma IBM dient zur Analyse von Unicode-Schriften (z.B. Arabisch).
- mojang: Siehe den Abschnitt weiter unten.
- paulscode: verschiedene Funktionsbibliotheken von Paul Lamb für das Soundsystem.
- commons-codec: Commons-Codec enthält Java-Hilfsfunktionen zum En- und Dekodieren von Daten.
- commons-io: Commons-IO enthält Java-Hilfsfunktionen für die Ein- und Ausgabe.
- commons-logging: Commons-Logging enthält Java-Hilfsfunktionen für das Schreiben von Protokolldateien.
- io: Netty stellt Netzwerk-Funktionen zur Verfügung.
- it: Die Bibliothek fastutil der Universität Mailand (unimi.it) beschleunigt den internen Datenzugriff.
- net
- java: JNA (Java Native Access) erlaubt den Zugriff auf plattformspezifische dynamische Programmbibliotheken, Jinput stellt Funktionen für die Eingabe von Unicode-Zeichen (z.B. Arabisch) zur Verfügung, Jutils stellt Java-Hilfsfunktionen zur Verfügung.
- sf: JOpt Simple analysiert Kommandozeilenparameter. Trove for Java ist eine Java-Funktionen-Fundgrube.
- org
- apache: Apache Commons der Apache Software Foundation stellt Java-Standardfunktionen zur Verfügung: Commons-Compress für den Umgang mit komprimierten Dateien, Commons-Lang3 als Ergänzung zur Java-Programmiersprache, HTTPcomponents für den Umgang mit dem Hyper-Text Transfer Protocol (HTTP), Log4j zum Erstellen von Protokolldateien.
- lwjgl: Die Lightweight Java Game Library stellt Java-Funktionen speziell für Computerspiele zur Verfügung.
- oshi-project: ist eine Bibliothek zur Ermittlung der Computerdaten (Operating System and Hardware Information).
- com
- libraries: Programmbibliotheken mit Funktionen, die von Minecraft genutzt werden.
Programmbibliotheken von Mojang[]
Folgende Programmbibliotheken hat die Firma Mojang selbst erstellt:
- authlib stellt Funktionen für das Mojang-Login zur Verfügung.
- brigadier ist ein Großteil des Befehle-Parsers, der die Eingabe von Befehlen prüft.
- datafixerupper sind Funktionen für die Umwandlung von Spielstand-Daten alter Minecraft-Versionen in höhere Versionen.
- patchy enthält eine Funktion zum Umwandeln der alten XML-Version in die neue für das Aussehen der Launcher-Protokolldateien.
- realms stellt alle Funktionen für Menü/Minecraft Realms zur Verfügung. Durch die Auslagerung der Realms-Funktionen in eine Programmbibliothek können diese verändert werden, ohne dass eine neue Minecraft-Version veröffentlicht werden muss[1].
- text2speech enthält für alle Plattformen die Funktionen zur Sprachausgabe.
Open-Source-Bibliotheken[]
Normalerweise sind Programmbibliotheken für Außenstehende nicht lesbar. Mojang hat sich jedoch entschieden, einige ihrer eigenen Programmbibliotheken als Open Source der Öffentlichkeit zur Verfügung zu stellen. Damit können sie in eigenen Spielen oder in eigene Minecraft-Modifikationen verwendet oder auch verändert und verbessert werden[2].
Die Open-Source-Bibliotheken stehen unter der MIT-Lizenz. Das erlaubt die Veränderung und Verbreitung dieser Programmbibliotheken, solange der Urheber Mojang genannt und der Lizenztext beigelegt wird (genauer Wortlaut).
Der Quellcode der Open-Source-Bibliotheken wird auf der Plattform GitHub veröffentlicht:
- briagdier.jar: Der Quellcode steht unter https://github.com/Mojang/brigadier
- datafixerupper.jar: Der Quellcode steht unter https://github.com/Mojang/DataFixerUpper
Nicht mehr verwendete Programmbibliotheken[]
Ältere, nicht mehr benötigte Programmbibliotheken werden nicht automatisch gelöscht. Sie stehen weiterhin im libraries-Order, werden aber nicht mehr verwendet. Auch das Starten eines älteren Launchers bewirkt, dass ältere Elemente in diesem Ordner erzeugt werden. Dazu gehören:
Geschichte[]
Versionsgeschichte der Java Edition | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
|
Einzelnachweise[]
Standard-Ressourcen |
| ||||
---|---|---|---|---|---|
Standard-Weltdaten |
| ||||
Spielwelt | |||||
Software |
| ||||
Speicherformate | |||||
Einstellungen | |||||
Mehrspieler | |||||
Historisch |