Sonata Block Bundle 找不到我的新 class

Sonata Block Bundle is having trouble finding my new class

我正在尝试使用 Sonata Block Bundle 创建一个新的块服务。它在 Symfony 3.3 之上 运行。

我已将现有 TextBlockService.php 文件克隆到名为 CenteredOverlineBlockService.php 的新文件中。这两个文件都位于 src/AppBundle/Resources/config/ 目录中。

我已将以下文本添加到我的 blocks.yml 文件中:

vgms.block.centeredoverline:
    class: AppBundle\Block\CenteredOverlineBlockService
    arguments:
        - "Centered Overline"
        - "@templating"
        - "@sonata.media.manager.media"
        - "@sonata.admin.pool"
    tags:
        - { name: sonata.block }

... 我在 sonata_block.yml 中添加了以下参考:

    vgms.block.centeredoverline:

...我现在收到以下错误:

Attempted to load class "CenteredOverlineBlockService" from namespace "AppBundle\Block". Did you forget a "use" statement for another namespace?

所以我的问题是:我在这里缺少哪一步?

应用程序毫无怨言地加载了以前存在的 TextBlockService。似乎只是这项新服务造成了问题。

===

编辑 #1:这是涉及的 class 的顶部:

namespace AppBundle\Block;

use ...

class CenteredOverlineBlockService extends \Sonata\BlockBundle\Block\Service\TextBlockService
{
...

就其价值而言,我的 "fix" 是从 不同的 捆绑包中克隆服务,然后改用 class。

这并没有真正回答我提出的 "why" 问题,但也许它会对某人有所帮助。