He estado trabajando en un proyecto usando Symfony 2.1 en mi máquina local. Lo he subido a mi servidor, pero cuando intento instalar los paquetes de proveedores con Composer, recibo muchos errores de dependencia. Presumiblemente, esto tiene algo que ver con la última versión de Symfony que acaba de ser lanzada y mi composer.json
archivo no especifica números de versión exactos.
¿Hay alguna forma de que pueda mostrar rápidamente los números de versión de todo en mi máquina local?
Aquí está mi archivo composer.json (que funcionó bien hasta hace unos días):
{
"name": "symfony/framework-standard-edition",
"description": "The \"Symfony Standard Edition\" distribution",
"autoload": {
"psr-0": { "": "src/" }
},
"require": {
"php": ">=5.3.3",
"symfony/symfony": "2.1.*",
"doctrine/orm": ">=2.2.3,<2.4-dev",
"doctrine/doctrine-bundle": "1.0.*",
"twig/extensions": "1.0.*",
"symfony/assetic-bundle": "2.1.*",
"symfony/swiftmailer-bundle": "2.1.*",
"symfony/monolog-bundle": "2.1.*",
"sensio/distribution-bundle": "2.1.*",
"sensio/framework-extra-bundle": "2.1.*",
"sensio/generator-bundle": "2.1.*",
"jms/security-extra-bundle": "1.2.*",
"jms/di-extra-bundle": "1.1.*",
"sonata-project/admin-bundle": "*",
"sonata-project/cache-bundle": "dev-master",
"sonata-project/doctrine-orm-admin-bundle": "dev-master",
"stof/doctrine-extensions-bundle": "1.1.x-dev",
"sonata-project/user-bundle": "dev-master",
"sonata-project/easy-extends-bundle": "dev-master",
"friendsofsymfony/user-bundle": "2.0.x-dev",
"friendsofsymfony/jsrouting-bundle": "*",
"liip/imagine-bundle": "*",
"simplethings/form-extra-bundle": "dev-master",
"antimattr/google-bundle": "dev-master",
"doctrine/doctrine-fixtures-bundle": "dev-master",
"genemu/form-bundle": "2.1.*",
"behat/behat": "2.4.*@stable",
"behat/mink": "1.4.*@stable",
"behat/symfony2-extension": "*@stable",
"behat/mink-extension": "*@stable",
"behat/mink-selenium2-driver": "*@stable",
"behat/mink-browserkit-driver": "*",
"liip/functional-test-bundle": "dev-master"
},
"scripts": {
"post-install-cmd": [
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile"
],
"post-update-cmd": [
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile"
]
},
"minimum-stability": "dev",
"extra": {
"symfony-app-dir": "app",
"symfony-web-dir": "web"
},
"config": {
"bin-dir": "bin/"
}
}
fuente
composer show
Enumera el paquete instalado de forma predeterminada.composer show --help
imprime todas las opciones disponibles.Para enumerar los paquetes de compositor instalados globalmente:
fuente
Lista de dependencias instaladas:
composer show -i
composer show -i -t
-i
abreviatura de--installed
.-t
abreviatura de--tree
.ref: https://getcomposer.org/doc/03-cli.md#show
fuente
-t
bandera muy útilEl comportamiento de este comando se modificó para que no tenga que pasar la
-i
opción:fuente
Si solo desea verificar la versión de una sola, puede hacerlo
Tenga en cuenta que solo los paquetes instalados se muestran por defecto ahora, y la opción instalada ahora está en desuso.
fuente
La respuesta de Ivan anterior es buena:
composer global show -i
Información agregada: si recibe un mensaje similar a:
Composer could not find a composer.json file in ~/.composer
... es posible que todavía no tenga paquetes instalados. Si es así, puede ignorar la siguiente parte del mensaje que contiene:
... please create a composer.json file ...
... ya que una vez que instales un paquete, el mensaje desaparecerá.
fuente
Si desea instalar Symfony2.2, puede ver el cambio completo en su
composer.json
blog de Symfony .Simplemente actualice su archivo de acuerdo a eso y ejecútelo
composer update
después de eso. Eso instalará todas las nuevas dependencias y Symfony2.2 en su proyecto.Si no desea actualizar a Symfony2.2, pero tiene errores de dependencia, debe publicarlos para que podamos ayudarlo más.
fuente
¿Hay alguna manera de obtenerlo a través de $ event-> getComposer () -> getRepositoryManager () -> getAllPackages ()
fuente