Heim  >  Artikel  >  Entwicklungswerkzeuge  >  Einführung in Lösungen für häufige Composer-Fehler

Einführung in Lösungen für häufige Composer-Fehler

藏色散人
藏色散人nach vorne
2020-01-08 14:33:142952Durchsuche

Das Folgende ist eine Tutorial-Kolumne von Composer, um Lösungen für häufige Composer-Fehler vorzustellen. Ich hoffe, dass sie Freunden in Not hilfreich sein wird!

Einführung in Lösungen für häufige Composer-Fehler

Beim Ausführen der Composer-Installation ist ein Fehler aufgetreten: Ihre Anforderungen konnten nicht in einen installierbaren Satz von Paketen aufgelöst werden. Dies liegt daran, dass die von Composer.json erforderliche Version nicht übereinstimmt.

Der vollständige Fehler lautet wie folgt:

vagrant@homestead:/usr/share/nginx/html/laravel-blog$ sudocomposerinstall
Loadingcomposerrepositorieswithpackage information
Installingdependencies (includingrequire-dev) fromlockfile
Yourrequirementscouldnot beresolvedto aninstallablesetofpackages.
 
  Problem 1
    - Installationrequestfor doctrine/instantiator 1.0.3 -> satisfiablebydoctrine/instantiator[1.0.3].
    - doctrine/instantiator 1.0.3 requiresphp ~5.3 -> yourPHPversion (7.0.3) doesnot satisfythatrequirement.
  Problem 2
    - doctrine/instantiator 1.0.3 requiresphp ~5.3 -> yourPHPversion (7.0.3) doesnot satisfythatrequirement.
    - phpunit/phpunit-mock-objects 2.3.0 requiresdoctrine/instantiator ~1.0,>=1.0.1 -> satisfiablebydoctrine/instantiator[1.0.3].
    - Installationrequestfor phpunit/phpunit-mock-objects 2.3.0 -> satisfiablebyphpunit/phpunit-mock-objects[2.3.0].

Es erinnert mich daran, dass meine PHP 7-Version zu hoch ist und nicht der von Composer.json geforderten Version entspricht. Es sollte jedoch auch möglich sein zur Ausführung unter PHP 7. Composer kann so eingestellt werden, dass die Versionen übereinstimmen. Der Befehl lautet:

composerinstall --ignore-platform-reqs
or
composerupdate --ignore-platform-reqs

Führen Sie den Composer-Befehl erneut aus, um das Paket normal zu installieren.

Wenn eine Warnung angezeigt wird:

Cannotcreatecachedirectory /home/vagrant/.composer/cache/repo/https---packagist.org/, or directoryis not writable. Proceedingwithoutcache
  Cannotcreatecachedirectory /home/vagrant/.composer/cache/files/, or directoryis not writable. Proceedingwithoutcache

Dies geschieht, wenn Composer in einer virtuellen Maschine ausgeführt wird, was darauf hinweist, dass dieses Verzeichnis keine Schreibberechtigungen hat und Composer das heruntergeladene Paket nicht zwischenspeichern kann muss jedes Mal erneut heruntergeladen werden. Ändern Sie einfach das Verzeichnis, damit es beschreibbar und lesbar ist.

sudo chmod -R 777 /home/vagrant/.composer/cache/files/

Stellen Sie außerdem Composer als inländisches Image in der virtuellen Maschine ein, da sonst die Download-Geschwindigkeit extrem langsam wird. Führen Sie Folgendes aus:

composerconfig -g repo.packagistcomposerhttps://packagist.phpcomposer.com

OK, Sie sind fertig.

Weitere technische Artikel zum Thema Komponisten finden Sie in der Spalte Komponist: https://www.php.cn/tool/composer/

Das obige ist der detaillierte Inhalt vonEinführung in Lösungen für häufige Composer-Fehler. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:csdn.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen