我无法解决在我的 symfony 应用程序中加载类的问题。应用程序的核心位于单独的 gitlab 存储库中,在 composer 中作为依赖项加载。
该软件包位于:
- ProjectRoot/供应商/官员/*
composer.json
这个包位于:
- ProjectRoot/vendor/officer/officer-domain/composer.json
composer.json
内容:
{
"name": "officer/officer-domain",
"autoload": {
"psr-4": {"Officer\\": "src"}
}
}
尝试EventDispatcherInterface
从命名空间加载时Officer\Infrastructure\EventDispatcher
:
尝试从命名空间“Officer\Infrastructure\EventDispatcher”加载接口“EventDispatcherInterface”。
您是否忘记了“Symfony\Contracts\EventDispatcher\EventDispatcherInterface”或“Symfony\Component\EventDispatcher\EventDispatcherInterface”的“使用”语句?
EventDispatcherInterface
位于:
- ProjectRoot/vendor/officer/officer-domain/src/Infrastructure/EventDispatcher/EventDispatcherInterface.php
两天来,我没有在目录结构中看到任何拼写错误,PhpStorm 正确地看到了文件并提示它们,也许我应该在我的应用程序中的 services yaml 中定义一些东西来指向 Officer/ 命名空间,但不能这样做。
任何帮助将不胜感激,干杯:)
我查看了类似的问题,但没有找到任何答案,如果有人会指出我与问题解决者重复的问题,我会很乐意关闭这个:)
更新:我解决了这个问题。我在 App\ 命名空间中有类,它们实现了来自 Officer\ 包的接口。Symfony 无法自动装配,我不得不在 services.yaml 中为它们添加映射
谢谢大家的帮助,加油