Typo3 扩展:注入存储库无论如何都不起作用

Typo3 Extension: Injection of repository doesn't work anyway

我按照 Typo3 的官方指南创建了一个新扩展 (https://docs.typo3.org/m/typo3/book-extbasefluid/9.5/en-us/4-FirstExtension/Index.html)。但是当我完成时,带有插件的页面只给我一个错误 500。反正没有错误日志。

当我启用 ErrorDisplay 时,我发现布尔值有问题。所以我删除了它们并再次尝试。我再次得到的是错误 500。ErrorDisplay 说构造函数不能有 return 值 - 呵呵?找到第 7 行 - 但声明位于第 22 行 -??

public function __construct(int $j = 0, int $n = 0, int $i = 0, int $p = 0, int $y = 0, int $a = 0): void {...} 

所以我尝试删除 return 值。但后来它告诉我,找不到 class。接下来,我试图找到有关该错误的任何信息,但发现什至一无所获。

我什至找不到按照官方指南解释的方式实现的扩展。有没有人可以告诉我,出了什么问题以及我可以在哪里找到解决方案 - 我不知道了。

经过数小时的反复试验,我找到了解决方案。问题是,由于异常处理失败,Typo3 没有给出正确的错误消息。您必须启用正常的 PHP 错误才能知道问题出在哪里。如果有任何 php 错误,Typo3 会失败并给出反射错误,因为它认为 class 不可用。

第一个错误是:按照第一次扩展的官方指南说明进行操作。如果您尝试给构造函数一个 return 值,编译器会失败。

第二个错误:Typo3 无法识别构造函数中是否缺少参数。它尝试获取下一个参数并通过比较参数类型失败。

第三个错误:如果 class 缺少底层 symphony 框架的说明,反射也会失败并注册 class 而不会给出任何错误消息。

在我发现并纠正所有错误后,一切正常。