Maison  >  Article  >  outils de développement  >  Introduction aux solutions aux erreurs courantes de Composer

Introduction aux solutions aux erreurs courantes de Composer

藏色散人
藏色散人avant
2020-01-08 14:33:142876parcourir

Ce qui suit est une colonne tutorielle de composer pour présenter des solutions aux erreurs courantes de Composer. J'espère que cela sera utile aux amis dans le besoin !

Introduction aux solutions aux erreurs 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. Les versions correspondent. La commande est :

composerinstall --ignore-platform-reqs
or
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

OK, vous avez terminé.

Pour plus d'articles techniques liés aux compositeurs, veuillez visiter la colonne composer : https://www.php.cn/tool/composer/

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!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer