Zend Framework 2: Uncaught Exception — модуль не может быть инициализирован

Я новичок в использовании ZF2, и столкнулся с проблемой получения первого проекта, над которым мне нужно поработать. Я прошел и настроил приложение локально, но когда я пытаюсь получить доступ к домашней странице, я получаю следующую ошибку исключения:

Неустранимая ошибка: необработанное исключение
‘Zend \ ModuleManager \ Exception \ RuntimeException’ с сообщением ‘Модуль
(Приложение) не может быть инициализирован. ‘ в
/var/www/myproject/vendor/ZF2/library/Zend/ModuleManager/ModuleManager.php
по линии 140

Zend \ ModuleManager \ Exception \ RuntimeException: Module (Приложение)
не может быть инициализирован. в
/var/www/myproject/vendor/ZF2/library/Zend/ModuleManager/ModuleManager.php
по линии 140

Есть также некоторый вывод, выводимый из трассировки стека вызовов … не уверен, будет ли это полезно для решения этого:

getApplication()->getEventManager(); $moduleRouteListener = new ModuleRouteListener(); $moduleRouteListener->attach($eventManager); $this->initDatabase($e); } public function initDatabase($e) { Feature\GlobalAdapterFeature::setStaticAdapter($e->getApplication()->getServiceManager()->get('Zend\Db\Adapter\Adapter')); } public function getConfig() { return include __DIR__ . '/config/module.config.php'; } public function getServiceConfig() { return array( 'factories' => array( 'dbadapter' => new Zfe\Factory('db'), ), ); } public function getAutoloaderConfig() { return array( 'Zend\Loader\StandardAutoloader' => array( 'namespaces' => array( __NAMESPACE__ => __DIR__ . '/src/' . __NAMESPACE__, ), ), ); } }

Изображение с полной трассировкой стека и ошибками:
введите описание изображения здесь

По этой теме уже был опубликован очень похожий вопрос: Учебник по Zend Framework 2: модуль (приложение) не может быть инициализирован .

Прочитав эту публикацию, я последовал предложенным ответам и рекомендациям по установлению абсолютного пути для module_paths в application.config.phpОднако это не повлияло на мою проблему.

application.config.php выдержка:

'module_paths' => array(
__DIR__.'/../module',
'./vendor',
),
<?
namespace Application;

use Zend\Db\TableGateway\Feature;
use Zend\Mvc\ModuleRouteListener;
use Zend\Mvc\MvcEvent;
use Zend\ModuleManager\Feature\ServiceProviderInterface;

use Model;
use Zfe;

class Module implements  ServiceProviderInterface {
public function onBootstrap(MvcEvent $e) {
$eventManager = $e->getApplication()->getEventManager();
$moduleRouteListener = new ModuleRouteListener();
$moduleRouteListener->attach($eventManager);
$this->initDatabase($e);
}

public function initDatabase($e) {
Feature\GlobalAdapterFeature::setStaticAdapter($e->getApplication()->getServiceManager()->get('Zend\Db\Adapter\Adapter'));
}

public function getConfig() {
return include __DIR__ . '/config/module.config.php';
}

public function getServiceConfig() {
return array(
'factories' => array(
'dbadapter'    => new Zfe\Factory('db'),
),
);
}

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

Любое понимание того, где я мог бы начать отладку, было бы очень полезно!

0

Решение

Согласно моему комментарию, ошибка указывает на то, что ZF не может найти класс модуля. В этом случае это потому, что используется короткий открытый тег (<? вместо <?php). Вывод PHP-кода обычно является хорошим индикатором этого.

1

Другие решения

Других решений пока нет …