symfony services.yml不包含有效的YAML

时间:2017-09-04 07:32:53

标签: symfony

我的services.yml中出现错误:services.yml不包含有效的YAML Symfony 3

redirectionListener:
  class: Gba\GbaBundle\Listener\RedirectionListener
  arguments: [@service_container, @session] 
  tags:
    - { name: kernel.event_listener, event: kernel.request, method: onKernelRequest }   

你能帮助我吗

由于

截图:

enter image description here

3 个答案:

答案 0 :(得分:4)

你必须要注意一些限制。 Symfony有一个简洁的命令行工具,您可以使用它来检查yaml文件是否有效,还会尝试指向错误所在的位置。你可以像这样运行它:

bin/console yaml:lint src/Gba/GbaBundle/Resources/config/services.yml

这只会对这个文件执行lint操作,如果需要,还可以将其指向整个文件目录。

我最好的猜测是,你必须在定义为参数的服务周围加上引号,实际上我更喜欢引用yaml中的每个字符串值:

redirectionListener:
  class: 'Gba\GbaBundle\Listener\RedirectionListener'
  arguments: ['@service_container', '@session'] 
  tags:
    - { name: 'kernel.event_listener', event: 'kernel.request', method: 'onKernelRequest' }

在yaml中需要注意的其他事项是正确的缩进和混合空间&标签。

答案 1 :(得分:0)

我曾经遇到此错误。这是因为我没有在services.yaml文件的末尾留空行。 一旦这样做,就不会再有错误了!

答案 2 :(得分:0)

就我而言,这是由于} 符号后的行尾有空格。