2013-07-28 22 views
7

Sadece bazı sınıfları otomatik olarak yüklemem gerekiyor ve psr-0 ad alanı deliliğini sevmem (suç yok). Yeniden yüklemeden Composer ile ad alanları olmadan sınıfları nasıl yüklenir?

Bu

Projemdeki çıkmaması için kullanılan:

"psr-0": { 
    "": [ 
     "app/controller/", 
     "app/model/" 
    ] 
} 

artık çalışmıyor Nedense, ben aynı Besteci sürümünü kullanıyorum rağmen. Silex'i de kullanan yeni bir projeye ihtiyacım var. Bu Silex ile bir çatışma olabilir mi?

"Classmap" seçeneğini biliyorum, ancak yeni bir sınıf eklediğimde "besteci yükleme" çalıştırmamı gerektirdiğinden işe yaramıyor.

Herhangi bir fikrin var mı?

cevap

1

Otomatik yükleme dosyasını yeniden oluşturmak isterseniz, composer dump-autoload kullanın.

6

"İlkel" JSON özelliklerini kullanmayı deneyin (örneğin örneğinizde olduğu gibi). Söylediğin gibi Bu "": "app/" ile psr-4 ile benim için çalışıyor:

{ 
"autoload": { 
    "psr-4": { 
     "Robbie\\": "core/", 
     "": "app/" 
    } 
}, 
"require": { 
     "monolog/monolog": "1.2.*" 
    } 
} 

Bu besteci tarafından kontrol edilmeyen kaynaklardan bir örneği olarak, bana, 3. taraf (satıcı) Monolog ad dizinine core altında Robbie ad verir ve varsayılan veya app dizininin altındaki kaynaklar için ad alanı içermiyor. Bir copmpser update sonra

, hepsi üretilen autoload.php dahil edilirken kullanılabilir:

<?php  
require_once 'vendor/autoload.php'; 
// ...  
?> 
+0

' "": "app /"' Bence – Toskan

+0

çalışmıyor besteci bir dosya adı vererek bir arada ve besteci yükleme besteci güncelleme besteci yükleme besteci güncelleme çalıştı sonunda – Toskan

İlgili konular