2012-08-15 6 views
6

Ich habe einige ältere Symfony 1.4-Projekte, die ich mit einer composer.json-Datei für ihre Abhängigkeiten erweitern möchte.Wie installiere ich Symfony 1.4 mit Composer?

Ich habe es geschafft, Composer zu konfigurieren, um das Verzeichnis "plugins" im Gegensatz zu "Vendors" zu verwenden. Laut der Symfony 1.4-Dokumentation sollte die Bibliothek idealerweise in "lib/vendor" außerhalb meines Projektstamms liegen.

Wenn ich ein benutzerdefiniertes Repository-Paket konfigurieren würde, das auf das neueste 1.4.x-SVN in meiner composer.json verweist, wie würde ich es bekommen, damit es auf "lib/vendor" installiert wird?

+0

Ich könnte mir vorstellen, dass das schwierig sein würde, vor allem, wenn der Composer automatisch lädt und erwartet, dass der Code dem PSR-0-Standard entspricht. – Burgi

Antwort

7

In der Tat ist dies kein Problem Symfony außerhalb lib/vendor zu haben. Es wird empfohlen, es in diesem Ordnerpfad zu haben, da es auf diese Weise automatisch geladen wird. Mithilfe von vendor-dir im Composer können Sie konfigurieren, wo Ihre Lieferantenbibliothek abgelegt werden soll. Aber das ist eine Konfiguration als root-only, so dass es nicht pro require-Bibliothek konfiguriert werden kann (zumindest denke ich so).

Aber Sie können symfony in Ihr plugins/ Verzeichnis abgelegt und dann zu Ihrer App sagen Sie automatisch zu laden alles wollen hier mit apps/frontend/config/autoload.yml:

autoload: 
    symfony: 
    path:  %SF_PLUGIN_DIR%/symfony/lib 
    recursive: on 

Vergessen Sie nicht, den Pfad in Ihrem config/ProjectConfiguration.class.php zu ändern:

<?php 

require_once dirname(__FILE__).'/../plugins/symfony/lib/autoload/sfCoreAutoload.class.php'; 

Das sollte den Trick tun.

+0

Funktioniert! Vielen Dank für Ihre Hilfe :) –

+0

@Omega Ist der Eintrag auf autoload.yml Datei wirklich notwendig? – Restless

+0

@Restless nein, es ist nicht notwendig – j0k

Verwandte Themen