2013-04-03 10 views
8

Ich habe ein neues Symfony 2.1-Projekt erstellt und ein benutzerdefiniertes Paket von einem SVN Repo heruntergeladen. Nun bin ich tryng das Projekt Symfony 2.2 zu aktualisieren, aber zu jeder Zeit versuche ich den Befehl php ~/bin/composer.phar update die folgende Fehlermeldung auszuführen erscheint:PHP Composer.phar Update fehlgeschlagen - Ein Tippfehler in den Paketnamen

Loading composer repositories with package information 
Updating dependencies (including require-dev)   
Your requirements could not be resolved to an installable set of packages. 

    Problem 1 
    - The requested package custom/utils could not be found in any version, there may be a typo in the package name. 

Potential causes: 
- A typo in the package name 
- The package is not available in a stable-enough version according to your minimum-stability setting 
    see <https://groups.google.com/d/topic/composer-dev/_g3ASeIFlrc/discussion> for more details. 

Read <http://getcomposer.org/doc/articles/troubleshooting.md> for further common problems. 

Dies ist Symfony 2.2 composer.json:

{ 
    "name": "symfony/framework-standard-edition", 
    "description": "The \"Symfony Standard Edition\" distribution", 
    "autoload": { 
     "psr-0": { "": "src/" } 
    }, 
    "repositories": [ 
     { 
      "type": "vcs", 
      "url": "svn+ssh://sources.de.ext/usr/local/svnroot/utils" 
     } 
    ], 
    "require": { 
     "php": ">=5.3.3", 
     "symfony/symfony": "2.2.*", 
     "doctrine/orm": "~2.2,>=2.2.3", 
     "doctrine/doctrine-bundle": "1.2.*", 
     "twig/extensions": "1.0.*", 
     "symfony/assetic-bundle": "2.1.*", 
     "symfony/swiftmailer-bundle": "2.2.*", 
     "symfony/monolog-bundle": "2.2.*", 
     "sensio/distribution-bundle": "2.2.*", 
     "sensio/framework-extra-bundle": "2.2.*", 
     "sensio/generator-bundle": "2.2.*", 
     "jms/security-extra-bundle": "1.4.*", 
     "jms/di-extra-bundle": "1.3.*", 
     "custom/utils": "*" 
    }, 
    "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" 
     ] 
    }, 
    "config": { 
     "bin-dir": "bin" 
    }, 
    "minimum-stability": "alpha", 
    "extra": { 
     "symfony-app-dir": "app", 
     "symfony-web-dir": "web", 
     "branch-alias": { 
      "dev-master": "2.2-dev" 
     } 
    } 
} 

Gewohnheit utils haben folgende composer.json:

{ 
    "name": "custom/utils", 
    "version": "1.0.0", 
    "description": "The Custom Libraries", 
    "autoload": { 
     "psr-0": { 
      "Blogo": "src/", 
      "WideImage": "lib/" 
     } 
    }, 
    "require": { 
     "symfony/console": "2.*", 
     "symfony/yaml": "2.*" 
    } 
} 

Könnte mir jemand helfen zu verstehen, was falsch ist in neu 2.2 Symfony? Weil diese Fehlermeldung nur Symfony 2.2-Upgrade angezeigt wird.

+0

Versuchen Sie, das '*' in der "custom/utils": "*" Zeile mit 'dev-master' zu ersetzen –

+0

Danke, ich habe versucht mit' "custom/utils": "1.0.0" ', und erhalten Fehlermeldung: 'Das angeforderte Paket custom/utils 1.0.0 konnte nicht gefunden werden. – freedev

+0

1.0.0 ist möglicherweise keine gültige Version. Die meisten Bundles verwenden, soweit ich weiß, 'dev-master' (ich bin jedoch ziemlich neu in Symfony). –

Antwort

8

Versuchen Sie, composer update --verbose oder composer show custom/utils --verbose zu laufen. Beide zeigen Ihnen etwas über das Laden Ihres SVN-Repositorys. Es sollte angeben, welche Versionen geladen sind oder nicht.

Meine Vermutung ist, dass Sie eine dev-trunk Version verfügbar haben, und wenn Sie es benötigen, wird es höchstwahrscheinlich funktionieren. Sie sollten version: 1.0.0 nicht in Ihrer Datei composer.json angeben, da der Composer die Versionsinformationen von Tags/Zweigen in Ihrem VCS liest.

+0

Ich habe versucht, Ihrem Vorschlag zu folgen, also habe ich die Version in '" custom/utils "' 'composer.json' entfernt. Nichts hat sich verändert. Nachdem ich versucht habe, "" trunk "' als Version in Symfony 2.2 'composer.json' zu spezifizieren. Eine neue Fehlermeldung ist erschienen: '" Ihre Anforderungen konnten nicht in einen installierbaren Satz von Paketen aufgelöst werden. Problem 1 - Installationsanfrage für Blogo/utils trunk -> satisfibable von blogo/utils dev-trunk. - Entfernungsanforderung für blogo/utils == 9999999-dev' – freedev

+2

Die Version ist 'dev-trunk' nicht' trunk', der Composer setzt Branchennamen mit 'dev -' voran, um sie eindeutig als instabile Ziele zu identifizieren (im Gegensatz zu Tags, die sich nicht ändern) . – Seldaek