2016-01-25 23 views
1

我的symfony2應用程序正在使用phpunit在wamp(windows)上完美,但是當更改環境並在安裝後開始在lampp(linux)上工作時,以下錯誤,當通過輸入運行測試的PHPUnit -c應用程序/:`/opt/lampp/htdocs/VTALLY/src/Iballot/CmsBundle/Tests/Controller/ParliamentaryControllerTest.php:11symfony2和phpunit不能在lampp上工作(ubuntu 15.x)

通過 的Symfony \組件引起的\ Yaml \ Exception \ ParseException:保留指示符「@」無法啓動純標量;你需要在線路報價標4(近 「參數:[@ security.context,@ fos_user.user_manager]」)。`

+0

你的YAML文件中包含參數@ security.context的內容是什麼?您是否在版本化您的代碼或複製/粘貼文件? – darkomen

+0

我只是在Linux環境中複製並通過它的代碼 –

+0

圍繞'@ what.ever'使用引號。 – qooplmao

回答

2

你需要把任何字符串開頭@引號:

arguments: 
    ["@security.context", "@fos_user.user_manager"] 

保留字符,如@,應引用。未上市@ s were deprecated in Symfony 2.8。 Symfony 3.0將禁止你使用這些定義,並會拋出異常。

如果您無法控制註冊有問題配置的捆綁軟件,請向供應商發送帶修復程序的拉取請求。作爲一個快速解決方案,您可以降級Symfony。 2.7將工作,以及2.8(後者將只發出棄用通知)。

+2

我應該在供應商內進行更改嗎?我不能 ! –

+0

發送PR給供應商來解決這個問題。 –

+0

或者使用舊版本的Symfony。 –