Typo3 当通过ext_localconf.php注册类时,自动加载不起作用

Typo3 当通过ext_localconf.php注册类时,自动加载不起作用,typo3,typo3-9.x,Typo3,Typo3 9.x,我遇到了一个班级不可用的问题。 我在扩展名下得到了下一个composer.json文件: { "autoload": { "psr-4": { "Vendor\\MySitepackage\\": "Classes/" } } } 现在我得到了一个EXT:my_sitepackage/Classes/Rendering/VideoRenderer.php类,它的名称空间和名称类是正确的 在我的ext\u localconf

我遇到了一个班级不可用的问题。 我在扩展名下得到了下一个
composer.json
文件:

{
    "autoload": {
        "psr-4": {
            "Vendor\\MySitepackage\\": "Classes/"
        }
    }
}
现在我得到了一个
EXT:my_sitepackage/Classes/Rendering/VideoRenderer.php
类,它的名称空间和名称类是正确的

在我的
ext\u localconf.php
下,我执行以下操作:

<?php
defined('TYPO3_MODE') or die();

(function () {
    ........
    /** @var \TYPO3\CMS\Core\Resource\Rendering\RendererRegistry 
$rendererRegistry */
    $rendererRegistry = \TYPO3\CMS\Core\Resource\Rendering\RendererRegistry::getInstance();
    $rendererRegistry->registerRendererClass(\Vendor\MySitepackage\Rendering\VideoRenderer::class);

    ........
})();
我检查了所有的名称类,似乎一切都正常

我是否应该在扩展中进行
composer dump autoload
,以加载info类?即使我这样做,它也会显示
生成的自动加载文件包含0个类


我感到有点困惑为什么会显示此错误。

如果此扩展未通过composer加载,则其
composer.json
将被忽略。您必须将sitepackage扩展的psr-4信息放在root composer.json中。不要忘记采用类似于
public/typo3conf/ext/my_sitepackage/Classes

的路径,非常感谢您的解释,Georg。我认为已经考虑了自己的扩展composer.json。我曾尝试将其移动到root composer.json,但问题是我忘记调整路径。现在工作正常!谢谢我也有同样的问题。。在根目录中更改composer.json并不能解决此问题。。
[ InvalidArgumentException ]                                                                             
  The class "Vendor\MySitepackage\Rendering\VideoRenderer" you are trying to register is not available