Maison > Article > outils de développement > Erreurs courantes de Composer et leurs solutions
La colonne tutorielle suivante de composer vous présentera les erreurs courantes et leurs solutions dans Composer. J'espère qu'elle sera utile aux amis dans le besoin !
Solutions d'erreur courantes de Composer
L'exécution de l'installation de Composer a rencontré une erreur : vos exigences n'ont pas pu être résolues en un ensemble de packages installables . En effet, la version requise par composer.json ne correspond pas.
L'erreur complète est la suivante :
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].
Cela me rappelle que ma version de PHP 7 est trop élevée et ne répond pas à la version requise par composer.json. Cependant, elle devrait également pouvoir le faire. pour s'exécuter sous PHP 7. Composer peut être configuré pour l'ignorer Si la version correspond, la commande est :
composerinstall --ignore-platform-reqs
ou
composerupdate --ignore-platform-reqs
Exécutez à nouveau la commande composer pour installer le package normalement.
Si un avertissement s'affiche :
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
C'est lorsque composer est exécuté sur une machine virtuelle, indiquant que ce répertoire n'a pas d'autorisations d'écriture et que composer ne peut pas mettre en cache le package téléchargé, il doit être téléchargé à nouveau à chaque fois. Changez simplement le répertoire pour qu'il soit accessible en écriture et en lecture.
sudo chmod -R 777 /home/vagrant/.composer/cache/files/
De plus, définissez composer comme image domestique dans la machine virtuelle, sinon la vitesse de téléchargement sera extrêmement lente. Exécutez :
composerconfig -g repo.packagistcomposerhttps://packagist.phpcomposer.com
.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!