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.

Beschreibung description

Umgebung

  • 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/Symptome

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-Aktualisierungsbefehl 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 Option ​ in {} und Plug-ins werden nicht mehr geladen, es sei denn, sie sind erlaubt.

Auflösung resolution

  1. Fügen Sie der Datei composer.jsonje nach Installation von Adobe Commerce Folgendes hinzu:

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

      code language-none
      "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 keinen Abschnitt dealerdirect/phpcodesniffer-installer" in "require-dev:
      code language-none
      "config": {
          "allow-plugins": {
              "laminas/laminas-dependency-plugin": true,
              "magento/*": true
          }
      }
      
  2. Führen Sie nach dem Aktualisieren der composer.json den Befehl composer update aus und starten Sie den Aktualisierungsprozess neu.

recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f