【问题标题】:InvalidArgumentException: The service definition "security.encoder_factory.responses" does not existInvalidArgumentException:服务定义“security.encoder_factory.responses”不存在
【发布时间】:2013-05-14 12:30:14
【问题描述】:

我在安装 symfony 2 时遇到了一个非常奇怪的错误。 一切正常,直到我突然遇到这个错误。由于该错误,无法清除缓存,这也使我无法使用 Composer 检查/更新依赖项。

InvalidArgumentException:服务定义“security.encoder_factory.responses”不存在

我尝试手动清除缓存(删除文件夹,重新创建并再次设置权限)但没有成功。即使构建了新的缓存,错误仍然存​​在并且是每个请求的结果。

有没有人建议去哪里寻找,或者如何解决这个问题?

Pazi 的建议 grep(参见 cmets)没有给出任何结果,为零。

【问题讨论】:

  • 在出现此错误之前您做了什么(您的最后一个操作)?
  • 对代码添加了一些小的改动(基本上是字符串操作)。
  • 您是否修改了任何服务定义?该错误意味着请求注入一个不存在的服务。 security.encoder_factory 确实存在。也许你改变了很多?
  • 我会在哪里改变它?应该去哪里看,我只是改了一些控制器代码...
  • IDK。您可以在项目目录中对此进行 grep 并将结果编辑到您的问题中吗? grep -rnE "security.encoder_factory.responses" *

标签: symfony service


【解决方案1】:

这似乎是一个 magic 依赖错误。清除vendor/ 目录,删除composer.lock 文件并从头开始安装供应商(使用update)后,它再次工作。

也许它是来自 composer 的未正确更新的自动加载器,或者是从 composer.json 中删除后未完全删除的供应商。有时会发生魔法:)

【讨论】:

    猜你喜欢
    • 2014-12-02
    • 1970-01-01
    • 2014-10-27
    • 1970-01-01
    • 2018-02-04
    • 1970-01-01
    • 2019-01-28
    • 1970-01-01
    相关资源
    最近更新 更多