2017-09-04 40 views
0

我得到一個錯誤在我services.yml:services.yml不包含有效的YAML Symfony的3symfony的services.yml不包含有效的YAML

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

你能幫我

由於

截圖:

enter image description here

+0

現在這是一個很長的錯誤信息!您需要圍繞包含@符號'@session'的字符串使用引號。它過去不用引號就可以工作,所以如果你正在關注一個沒有引號的例子,那麼就放棄這個例子,因爲它已經過時了,而且可能還會有其他問題。 – Cerad

回答

2

yaml中有一些限制,你必須注意。 Symfony有一個整潔的命令行工具,你可以用它來檢查一個yaml文件是否有效,它也會試圖指出你錯誤的位置。你可以像這樣運行:

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

這隻會做皮棉在這一個文件,你也可以將它指向的文件的整個目錄,如果你想要的。

我最好的猜測是,你必須把周圍定義爲參數,實際上服務的報價,我更喜歡引用在YAML每個字符串值:

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

其他的事情看出來在YAML是正確的縮進和混合空間&選項卡。