Composer-Plug-ins-Probleme beim Upgrade auf Adobe Commerce 2.4.4

Dieser Artikel bietet eine Lösung, um Probleme mit Composer-Plug-ins beim Upgrade von Adobe Commerce 2.4.3 und früher auf Adobe Commerce 2.4.4 oder höher (wenn zukünftige Versionen veröffentlicht werden) zu vermeiden.

Betroffene Produkte und Versionen

  • Adobe Commerce On-Premises, jede Version bei der Aktualisierung auf 2.4.4 oder höher (bei Veröffentlichung)
  • Adobe Commerce auf Cloud-Infrastruktur, jede Version bei der Aktualisierung auf 2.4.4 oder höher (bei Veröffentlichung)
  • Magento Open Source, jede Version bei der Aktualisierung auf 2.4.4 oder höher (bei Veröffentlichung)

Problem

Bei der Aktualisierung auf Adobe Commerce 2.4.4 oder höher nach Juli 2022 erhalten Sie möglicherweise eine Warnung von Composer zu Plug-ins.

Schritte zur Reproduktion:

Voraussetzungen: Adobe Commerce 2.4.3 oder früher ist installiert.

  1. Starten Sie das Upgrade wie unter Durchführen eines Upgrades beschrieben.
  2. Führen Sie den composer update Befehl aus, um die Adobe Commerce-Anwendung zu aktualisieren.

Erwartete Ergebnisse:

Upgrade ist erfolgreich.

Tatsächliche Ergebnisse:

Die Installation schlägt mit einem Fehler ähnlich dem folgenden fehl:

Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 591 installs, 0 updates, 0 removals
  - Installing laminas/laminas-dependency-plugin (2.2.0): Extracting archive
laminas/laminas-dependency-plugin contains a Composer plugin which is currently not in your allow-plugins config. See https://getcomposer.org/allow-plugins
Do you trust "laminas/laminas-dependency-plugin" to execute code and wish to enable it now? (writes "allow-plugins" to composer.json) [y,n,d,?] y
Plugin initialization failed (require(app/etc/NonComposerComponentRegistration.php): failed to open stream: No such file or directory), uninstalling plugin
  - Removing laminas/laminas-dependency-plugin (2.2.0)
    Install of laminas/laminas-dependency-plugin failed


  [ErrorException]
  require(app/etc/NonComposerComponentRegistration.php): failed to open stream: No such file or directory

Ursache

Nach Juli 2022 ändert Composer den Standardwert der allow-plugins Optionin {} und Plug-ins werden nicht mehr geladen, es sei denn, sie sind erlaubt.

Lösung

Fügen Sie je nach Installation von Adobe Commerce Folgendes zu Ihrer composer.json hinzu:

  • Wenn das Projekt erstellt wurde mit dem composer create-project Befehl:

    code language-json
    "config": {
        "allow-plugins": {
            "dealerdirect/phpcodesniffer-composer-installer": true,
            "laminas/laminas-dependency-plugin": true,
            "magento/*": true
        }
    }
    
  • Wenn das Projekt auf eine andere Weise erstellt wurde und in "require-dev" Abschnitt keine "dealerdirect/phpcodesniffer-installer" enthält:

    code language-json
    "config": {
        "allow-plugins": {
            "laminas/laminas-dependency-plugin": true,
            "magento/*": true
        }
    }
    

Führen Sie nach dem Aktualisieren der composer.json den Befehl composer update aus und starten Sie den Aktualisierungsprozess neu.

recommendation-more-help
8bd06ef0-b3d5-4137-b74e-d7b00485808a