Contao FAQ - dein gewähltes Thema
Welche Funktion haben die composer.json und composer.lock
Im Contao Projektordner befinden sich die Dateien composer.json und composer.lock
diese beiden Dateien sind zentral für das Contao 5 Projekt (und jedes andere Composer-basierte PHP-Projekt). Hier eine einfache und klare Erklärung:
- composer.json – die Wunschliste
Diese Datei enthält:
- Welche Pakete (z. B. Erweiterungen, Bundles) dein Projekt benötigt
- Versionseinschränkungen (z. B. ^5.1 oder >=4.13)
- Metadaten, wie Name des Projekts, PHP-Version, usw.
Du kannst dir die Datei also wie eine Einkaufsliste vorstellen: "Ich möchte diese Erweiterungen in bestimmten Versionen."
- composer.lock - die Einkaufsliste
Diese Datei speichert die exakt installierten Versionen aller Abhängigkeiten, einschließlich aller verschachtelten Abhängigkeiten (Dependencies von Dependencies).
Das heißt:
- Wenn du composer install auf einem Server oder bei einem Teamkollegen ausführst, werden genau dieselben Versionen installiert wie bei dir lokal
- Das sorgt für Stabilität, Reproduzierbarkeit und verhindert Versionskonflikte.
Typischer Ablauf:
- Du fügst etwas zur composer.json hinzu (z. B. über den Contao Manager oder manuell).
- Du führst composer update aus:
- Composer lädt die neuesten kompatiblen Versionen.
- composer.lock wird aktualisiert.
- Du checkst beide Dateien ins Git-Repository ein.
- Auf anderen Umgebungen wird mit composer install genau das installiert, was im composer.lock steht – egal, was sich inzwischen bei den Paket-Anbietern geändert hat.
Wichtiger Hinweis
- In Contao 5, wird die composer.json primär vom Contao Manager gepflegt. Manuelles Bearbeiten ist möglich, aber mit Vorsicht.
- Änderungen in vendor/ passieren auf Basis dieser beiden Dateien.
Kurz gesagt:
- composer.json - Welche Pakete möchtest du installieren?
- composer.lock - Welche Pakete wurden tatsächlich installiert?
Zuletzt aktualisiert am 07.07.2025 von Hartmut Schneider - Admin.
Kommentare
Einen Kommentar schreiben