Cuando ejecuto composer update
, recibo una salida por cable.
Aquí está mi aspecto composer.json.
{
"name": "laravel/laravel",
"description": "The Laravel Framework.", "keywords": ["framework", "laravel"],
"license": "MIT",
"repositories": [{
"type": "vcs",
"url": "https://github.com/Zizaco/ardent.git"
}],
"require-dev": {
"phpunit/phpunit": "4.3.*"
},
"require": {
"laravel/framework": "4.2.*",
"laravelbook/ardent": "dev-master as 2.4.0",
"zizaco/entrust": "dev-master",
"sebklaus/profiler": "dev-master",
"doctrine/dbal": "dev-master"
},
"autoload": {
"classmap": [
"app/commands",
"app/controllers",
"app/models",
"app/database/migrations", "app/database/seeds", "app/tests",
"app/libraries"
]
},
"scripts": {
"post-install-cmd": [
"php artisan clear-compiled",
"php artisan optimize"
],
"post-update-cmd": [
"php artisan clear-compiled",
"php artisan optimize"
],
"post-create-project-cmd": [
"php artisan key:generate"
]
},
"config": {
"preferred-install": "dist"
},
"minimum-stability": "stable"
}
Cómo arreglo eso ?
laravel
laravel-4
composer-php
cyber8200
fuente
fuente
Respuestas:
Sus dependencias de software tienen un conflicto de versión incompatible.
Al mismo tiempo, desea instalar cualquier versión de Laravel 4.2.xy "zizaco / entrust" desde su rama maestra. Y esa rama maestra requiere al menos Laravel 5.0 (en términos generales).
El problema proviene de la dependencia de las ramas. Es probable que el paquete zizaco / entrust alguna vez usara Laravel 4.2 en su rama maestra y que pudieras instalar tus dependencias ese día. Pero en el mismo momento en que esta rama se actualice con un requisito de versión incompatible, nunca podrá ejecutar
composer update
y obtener dependencias actualizadas.¡Utilice siempre versiones etiquetadas! Lo ideal es que utilice un requisito de versión relajado que permita actualizaciones compatibles. Esto debe expresarse como un requisito de versión de tilde-two-number:
~1.2
instalaría una versión 1.2.0 y superior (como 1.2.99 o 1.2.100), y también 1.3 y superior. Si necesita una versión de parche determinada: Caret-three-number version^1.2.10
instalará 1.2.10 o superior, también 1.3 y superior.El uso de este requisito de versión en lugar de
dev-master
le permitirá usar versiones publicadas en lugar del estado inestable en la rama maestra, y le permitirá abordar la versión más reciente que aún funciona con Laravel 4.2. Supongo que sería la versión 1.3.0 de zizaco / entrust, pero la versión 1.2 también calificaría. Ir con"zizaco/entrust": "~1.2"
.fuente
"zizaco/entrust": "~1.2"
Laravel 5.0
lo requeríazizaco/entrust
.illuminate/support ^5.0
es requerido porzizaco/entrust
, y si sabe que "Laravel" e "Illuminate" son básicamente lo mismo, la conclusión debería ser correcta.Ejecute este comando:
o
fuente
Estoy enfrentando el mismo problema. Estoy usando el marco de microservicio 'Lumen'. Recientemente resolví el mismo problema instalando dos paquetes: -
Después de instalar esto, debe ejecutar este comando: - actualización del compositor
Espero que resuelva el problema. Trabajo en mi sistema.
fuente
sudo apt-get install php-xml
¿Se
dev-master
agregaron esos mensajes automáticamente? Evítelos como restricciones de versión innecesarias, para el uso de 'cualquier versión adecuada'"*"
, o"@dev"
si no le importan los paquetes de desarrollo. Supongo que Entrust es el potencial alborotador.Además,
"minimum-stability": "stable"
impone restricciones adicionales y"minimum-stability": "dev", "prefer-stable": true
está más libre de conflictos, considérelo una regla general.
fuente
dev-master
restricción. No dice que las restricciones de versiones sueltas sean buenas; probablemente resultarán en un lío, y esto está en la conciencia del desarrollador. El hecho de que la respuesta no tenga opiniones sobre el etiquetado no significa que sea incorrecta. Gracias por un voto negativo, por cierto. Es bastante ético rechazar las respuestas de los vecinos.Resolví el mismo problema configurando
'laravel/framework'
la versión de dependencia de"^8.0"
a"^7.0"
.Después de eso, correr
composer update --ignore-platform-reqs
simplemente funcionócomposer.json
fuente
Agregue
"barryvdh/laravel-cors": "^0.7.3"
al final de larequire
matriz dentro de composer.jsonGuarde composer.json y ejecute
composer update
Estás listo !
fuente
Encontré este problema en Laravel 5.8, lo que hice fue hacer
composer require
para cada biblioteca y todas estaban instaladas correctamente.Al igual que:
en lugar de agregarlo al archivo composer.json o especificar una versión:
composer require msurguy/honeypot: dev-master
En cambio, lo hice sin especificar ninguna versión:
composer require msurguy/honeypot
Espero que ayude, gracias
fuente
"config": { "platform": { "ext-pcntl": "7.2", "ext-posix": "7.2" } }
fuente
Resolví el mismo error agregando en
"zizaco/entrust": "*"
lugar de"zizaco/entrust": "~1.2"
.fuente
PORQUE:
El error ocurre porque la carpeta del proyecto es propiedad del usuario root.
SOLUCIÓN
Cambie la propiedad al usuario que ha iniciado sesión actualmente y no al usuario root. Si solo tiene root como único usuario, cree otro usuario con privilegios de root.
$ sudo chown -R actual_usuario / mi / proyecto / directorio /
entonces
$ composer install
fuente
Simplemente active el curl en el archivo php.ini
a
y luego el compositor instala
fuente