我已將Symfony應用程序部署到one.com服務器。我寫了一個郵件服務,通過SwiftMailer發送我的郵件。Symfony2 - 未找到類XXX
現在,由於one.com不允許phar-extensions允許,作曲家無法通過ssh更新。於是,我產生的類映射本地與
composer update -o
每當我試圖讓郵件服務,應用程序引發的錯誤:
Fatal error: Class 'Stocksolutions\ShopBundle\DependencyInjection\Mail' not found in /customers/4/b/b/stocksolutions.be/httpd.www/releases/20150204201140/app/cache/dev/appDevDebugProjectContainer.php on line 3602
我已經搜查了作曲家類映射和類未找到它在裏面:
'StockSolutions\\ShopBundle\\DependencyInjection\\Mail' => $baseDir . '/src/StockSolutions/ShopBundle/DependencyInjection/Mail.php'
此外,我可以在容器中獲得其他服務,fe那些來自FOSUserBundle,但獲取我的自定義服務會引發錯誤。另外,在本地測試時,我不會得到這些錯誤..
任何想法?
您不應該在生產服務器上進行更新,因爲這會拉出未測試的新版本。運行'composer install'並提交併將'composer.lock'文件部署到您的項目中。您的部署可以使用SSH從本地機器複製到遠程,並安裝所有依賴項和自動加載。如果它在本地工作,它應該遠程工作。 – Sven 2015-02-07 17:16:55
當我不生成類圖時它不起作用。然後我在主頁上看到這個'Class not found'錯誤(帶有不同的類)。也許值得一提的是,應用程序位於子文件夾中,並通過htaccess文件引用。然後,類映射中類的路徑是正確的,並且文件已就位。因此,我無法真正包裝我的頭在此.. – 2015-02-07 19:23:43
您是否嘗試在生成類圖後清除緩存?這會更新'appDevDebugProjectContainer.php',也許你的問題就會消失。 – 2015-02-08 17:22:37