模块无法初始化 zf3 已在互联网上搜索
Module cannot be initialized zf3 already searched internet
我在 Zend Framework 3 应用程序中收到以下错误:
致命错误:未捕获Zend\ModuleManager\Exception\RuntimeException:无法初始化模块(服务)。
我知道有一些答案,但是 none 似乎指向 zf3 并且我已经扫描了它们但没有答案。我似乎无法通过研究找到答案。
我的应用程序可能没有加载模块吗?我稍微修改了应用程序配置,因此它可能不会加载模块本身。
我有一个文件夹结构:
- module
-Serve
-src
-Module.php
-Controller
-IndexController.php
-config
-module.config.php
-view
我已将模块添加到 /config/application.config.php
中的模块数组中。
这是我的 module.config.php
namespace Serve;
return array(
'controllers' => array(
'invokables' => array(
'Serve\Controller\Index' => 'Serve\Controller\IndexController',
),
),
// The following section is new and should be added to your file
'router' => array(
'routes' => array(
'serve' => array(
'type' => 'segment',
'options' => array(
'route' => '/srv[/:action]',
'constraints' => array(
'action' => '[a-zA-Z][a-zA-Z0-9_-]*'
),
'defaults' => array(
'controller' => 'Serve\Controller\Index',
'action' => 'index',
),
),
),
),
),
'view_manager' => array(
'template_path_stack' => array(
'album' => __DIR__ . '/../view',
),
'strategies' => array(
'ViewJsonStrategy',
),
),
);
这是我的 Serve\Module.php
文件:
<?php
namespace Serve;
class Module
{
public function getConfig()
{
return include __DIR__ . '/../config/module.config.php';
}
}
我的 Application\Module.php
中有一堆业务逻辑,但没有任何东西看起来会中断加载模块。
我似乎无法通过研究找到答案。这里可能有什么问题?
您是否将模块添加到自动加载器? https://github.com/zendframework/ZendSkeletonApplication/blob/master/composer.json#L23
在 ZF2 中,我们过去常常通过模块 class 自动加载几乎任何东西,现在我们可以在 composer 中完成,这更容易并且允许选项,例如 --optimize (generate classmaps) 和 --classmap-authoritative(不要在 classmap 之外加载任何 class)。
编辑 composer.json 文件后不要忘记 composer dumpautoload :)
我在 Zend Framework 3 应用程序中收到以下错误:
致命错误:未捕获Zend\ModuleManager\Exception\RuntimeException:无法初始化模块(服务)。
我知道有一些答案,但是 none 似乎指向 zf3 并且我已经扫描了它们但没有答案。我似乎无法通过研究找到答案。
我的应用程序可能没有加载模块吗?我稍微修改了应用程序配置,因此它可能不会加载模块本身。
我有一个文件夹结构:
- module
-Serve
-src
-Module.php
-Controller
-IndexController.php
-config
-module.config.php
-view
我已将模块添加到 /config/application.config.php
中的模块数组中。
这是我的 module.config.php
namespace Serve;
return array(
'controllers' => array(
'invokables' => array(
'Serve\Controller\Index' => 'Serve\Controller\IndexController',
),
),
// The following section is new and should be added to your file
'router' => array(
'routes' => array(
'serve' => array(
'type' => 'segment',
'options' => array(
'route' => '/srv[/:action]',
'constraints' => array(
'action' => '[a-zA-Z][a-zA-Z0-9_-]*'
),
'defaults' => array(
'controller' => 'Serve\Controller\Index',
'action' => 'index',
),
),
),
),
),
'view_manager' => array(
'template_path_stack' => array(
'album' => __DIR__ . '/../view',
),
'strategies' => array(
'ViewJsonStrategy',
),
),
);
这是我的 Serve\Module.php
文件:
<?php
namespace Serve;
class Module
{
public function getConfig()
{
return include __DIR__ . '/../config/module.config.php';
}
}
我的 Application\Module.php
中有一堆业务逻辑,但没有任何东西看起来会中断加载模块。
我似乎无法通过研究找到答案。这里可能有什么问题?
您是否将模块添加到自动加载器? https://github.com/zendframework/ZendSkeletonApplication/blob/master/composer.json#L23
在 ZF2 中,我们过去常常通过模块 class 自动加载几乎任何东西,现在我们可以在 composer 中完成,这更容易并且允许选项,例如 --optimize (generate classmaps) 和 --classmap-authoritative(不要在 classmap 之外加载任何 class)。
编辑 composer.json 文件后不要忘记 composer dumpautoload :)