Verwendung von Modulen, die mit Composer und Firegento in meiner Magento-Installation installiert wurden

7

Dies ist eine super grundlegende Magento / Composer-Frage: Wie sollen Benutzer (dh ich) ein Magento-System auf Pakete aufmerksam machen, die über Composer / Firegento installiert wurden?

Das heißt - die  meisten Tutorials, die ich gefunden habe, decken das Einrichten einer composer.jsonDatei ab, und ich habe das ohne Probleme verwaltet. Ich kann Pakete vendornach Herzenslust installieren .

Sie werden auch erwähnen, dass Sie Folgendes zu Ihrem hinzufügen, composer.jsondamit "[etwas]" weiß, wo die Module installiert werden müssen

"extra":{
    "magento-root-dir":"./"
 }

Was ich mit der vorhandenen Dokumentation jedoch nicht herausfinden konnte, ist, welchen Befehl ich ausführen muss, um die Dateien ./vendorin mein Magento-Stammverzeichnis zu kopieren oder zu verknüpfen .

Die Tutorials, die ich gefunden habe, sagen, dass Sie das Magento-Hackathon / Magento-Composer-Installer-Projekt auf GitHub verwenden - aber die README dieses Projekts scheint sich mehr auf das Erstellen eigener Pakete als auf die grundlegende Verwendung zu konzentrieren.

Alan Storm
quelle
Ich gehe davon aus, dass Sie versucht haben, "Composer Install" auszuführen. Das sollte alles sein, was benötigt wird.
Joe Constant
@JoeConstant Ja, ich habe - es (sieht aus wie?) Das einzelne Paket, das ich installiert habe, hatte nicht die richtigen Anforderungen, damit es funktioniert. Ich arbeite gerade an einer Antwort.
Alan Storm

Antworten:

5

Die Kurzversion: Wenn alles richtig konfiguriert ist, müssen Sie nichts tun. Die Funktionsweise von packages.firegento.com besteht darin, ein benutzerdefiniertes Composer-Installations-Plugin zu nutzen . Dieses benutzerdefinierte Installations-Plugin verwaltet das Verknüpfen oder Kopieren der Dateien (abhängig vom Wert magento-deploystrategyim extraKonfigurationsabschnitt).

Doch irgendwo in Ihrem Komponisten requireKonfiguration, müssen Sie das einschließen magento-hackathon/magento-composer-installerPakets.

"require": {
    "magento-hackathon/magento-composer-installer": "*"
},

Dieses Paket installiert das Composer-Plugin, das wiederum die benutzerdefinierte Installationsfunktionalität aktiviert. Aus diesem Grund sollte jedes Composer-Plugin dieses Paket in seiner requireListe haben.

Alan Storm
quelle
Der letzte Teil ist falsch. Für ein Magento-Modul sollte das Installationsprogramm nicht erforderlich sein. Ich habe der Readme eine Erklärung dafür hinzugefügt: github.com/magento-hackathon/magento-composer-installer/…
Flyingmana
@Flyingmana Ich kann verstehen, warum Sie das sagen würden, und es ist ein lobenswertes Ziel, aber die connect20/*Pakete im FireGento-Repository haben alle diese Bibliothek automatisch hinzugefügt, was kulturell bedeutet, dass das Projekt möchte, dass seine Entwickler diese Pakete nach Bedarf hinzufügen . Dies ist auch unter dem Gesichtspunkt der Benutzerfreundlichkeit sinnvoll, da es wie ein Fehler erscheint, von Neulingen zu erwarten, dass sie das Komponistenmodell vollständig bearbeiten.
Alan Storm
nein, einfach nein !!
Flyingmana