2012-11-24 22 views
7

Zend Framework'ü öğrenmeye başladım ancak modüllerimle ilgili sorun yaşıyorum. Lütfen aşağıdaki hatayı inceleyin. Daha fazla bilgi için henüz başka ne göstereceğim bilmiyorum. Lütfen sorunu çözmeniz için size nelere dikkat etmem gerektiğini bildirin.ZF2 - autoloader classmap Fatal Error 'Sağlanan harita dosyası mevcut değil'

Önemli hata: Özel durum yakalanmamış 'Zend \ Loader \ İstisna \ InvalidArgumentException o zaman muhtemelen böyle bir şey var, aslında autoload_classmap.php dosyayı kullanılan bir modülden Örnek kodu kopyalanan ettiyseniz

Fatal error: Uncaught exception 
'Zend\Loader\Exception\InvalidArgumentException' with message 'Map 
file provided does not exist. Map file: "C:\Program 
Files\xampp\htdocs\zend_intro\module\Album/autoload_classmap.php"' in 
C:\Program 
Files\xampp\htdocs\zend_intro\vendor\zendframework\zendframework\library\Zend\Loader\ClassMapAutoloader.php:175 
Stack trace: #0 C:\Program 
Files\xampp\htdocs\zend_intro\vendor\zendframework\zendframework\library\Zend\Loader\ClassMapAutoloader.php(85): 
Zend\Loader\ClassMapAutoloader->loadMapFromFile('C:\Program File...') 
#1 C:\Program Files\xampp\htdocs\zend_intro\vendor\zendframework\zendframework\library\Zend\Loader\ClassMapAutoloader.php(121): 
Zend\Loader\ClassMapAutoloader->registerAutoloadMap('C:\Program 
File...') #2 C:\Program 
Files\xampp\htdocs\zend_intro\vendor\zendframework\zendframework\library\Zend\Loader\ClassMapAutoloader.php(64): 
Zend\Loader\ClassMapAutoloader->registerAutoloadMaps(Array) #3 
C:\Program 
Files\xampp\htdocs\zend_intro\vendor\zendframework\zendframework\library\Zend\Lo 
in C:\Program 
Files\xampp\htdocs\zend_intro\vendor\zendframework\zendframework\library\Zend\Loader\ClassMapAutoloader.php 
on line 175

cevap

9

senin module.config.php dosyasında veya bir yere sizin Module.php dosyada:

public function getAutoloaderConfig() 
{ 
    return array(
     'Zend\Loader\ClassMapAutoloader' => array( // THIS IS 
      __DIR__ . '/autoload_classmap.php'  // THE PROBABLE 
     ),           // CULPRIT 
     'Zend\Loader\StandardAutoloader' => array(
      'namespaces' => array(
       __NAMESPACE__ => __DIR__ . '/src/' . __NAMESPACE__ 
      ) 
     ) 
    ); 
} 

Çözüm? Her iki kod - veya aslında create a classmap için bir otomatik yükleyici sınıf haritasına sahip olmanız gerekmiyor - kod satırlarını kaldırın.

1

zend_intro/modül/Albüm altında autoload_classmap.phpadlı bir dosya oluşturun ve bu kod satırını içerir: Daha fazla ayrıntı Autoloading files

0

yılında belgelerine üzerinde

return array(); 

Kontrolü bu module.config.phpClassMapAutoLoader eşlemesini kaldır, yalnızca StandardA olmalıdır aşağıda gösterildiği gibi utoloader;

public function getAutoloaderConfig() 
{ 
    return array(
     'Zend\Loader\StandardAutoloader' => array(
      'namespaces' => array(
       __NAMESPACE__ => __DIR__ . '/src/' . __NAMESPACE__, 
      ), 
     ), 
    ); 
} 

Bu, sorunu çözecektir.

İlgili konular