2012-08-15 14 views
6

Ho alcuni progetti di Symfony 1.4 legacy che vorrei migliorare con un file composer.json per le loro dipendenze.Come installo Symfony 1.4 usando il compositore?

Sono riuscito a configurare il compositore per utilizzare la directory "plugins" anziché "fornitori". Comunque, secondo la documentazione di Symfony 1.4, la libreria dovrebbe idealmente vivere in "lib/vendor" al di fuori del mio progetto root.

Se dovessi configurare un pacchetto repository personalizzato che punta all'ultimo svn 1.4.x nel mio compositore.json, come potrei farlo in modo che si installi su "lib/vendor"?

+0

Immagino che sarebbe difficile, specialmente con il caricamento automatico del compositore che si aspetta che il tuo codice segua lo standard PSR-0. – Burgi

risposta

7

In realtà, non è proprio un problema avere symfony al di fuori dello lib/vendor. Si consiglia di averlo in questo percorso di cartella perché, in questo modo, verrà caricato automaticamente. Utilizzando vendor-dir in Composer, è possibile configurare la posizione in cui inserire la libreria del fornitore. Ma questa è una configurazione impostata come solo root, quindi non può essere configurata per libreria richiesta (almeno credo).

Ma si può mettere symfony nella directory plugins/ e poi dire alla tua applicazione che si desidera caricare automaticamente tutto qui, utilizzando apps/frontend/config/autoload.yml:

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

Non dimenticare di modificare il percorso della tua config/ProjectConfiguration.class.php:

<?php 

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

Questo dovrebbe fare il trucco.

+0

Funziona! Grazie mille per il tuo aiuto :) –

+0

@Omega La voce sul file autoload.yml è davvero necessaria? – Restless

+0

@Restless no, non è necessario – j0k

Problemi correlati