seeseekey.net - Invictus Deus Ex Machina

Beim Update einer MediaWiki-Installation auf die Version 1.28.1 über das update.php-Skript erhielt ich folgende Fehlermeldung:

Error: your composer.lock file is not up to date. Run "composer update" to install newer dependencies

Hintergrund sind unerfüllte Abhängigkeiten, welche wohl nur für die Entwicklung benötigt werden. Um das Update trotzdem durchzuführen sollte folgendes Kommando im Terminal genutzt werden:

php ./update.php --skip-external-dependencies

Damit wird die Prüfung der externen Abhängigkeiten deaktiviert und die Aktualisierung kann erfolgreich durchgeführt werden.

Nutzt man Maven in einem Projekt, so wird dieses Projekt eine Reihe von Abhängigkeiten in Form von Bibliotheken haben. Manchmal kommt es vor, das eine Bibliothek in mehreren Versionen von unterschiedlichen Bibliotheken eingebunden wird und das dass Hauptprojekt die falsche Version nutzt. Im Terminal kann man mittels des Befehls:

mvn dependency:tree

den Abhängigkeitsbaum des Projektes anzeigen lassen. Bei kleinere Projekten sieht der Baum dabei noch übersichtlich aus:

[INFO] --- maven-dependency-plugin:2.8:tree (default-cli) @ netty-example ---
[INFO] de.uulm.vs:netty-example:jar:1.0-SNAPSHOT
[INFO] +- junit:junit:jar:3.8.1:test
[INFO] \- org.jboss.netty:netty:jar:3.2.2.Final:compile

Bei größeren Projekten kann man mit Hilfe des Abhängigkeitsbaum ermitteln, welche Abhängigkeiten woher kommen und eventuelle Probleme mit diesen lösen.