2

我安裝了FOS Userbundle以從中學習,但決定不再需要它了。然後我做了以下操作將其刪除。刪除後,我跑了作曲家更新。Symfony2 - 手動刪除FOS用戶捆綁軟件,現在無法在生產模式下清除緩存

  • 除去從供應商文件夾
  • 束從appKernel
  • 從composer.json文件中刪除刪除
  • 除去實體user.php的文件
  • 除去從config.yml的設置,security.yml,routing.yml

現在,當我嘗試清除生產模式緩存時,我在下面得到以下錯誤。在開發模式清除緩存工作正常。

可以告訴我我做錯了什麼,或者我缺少什麼來刪除FOS User Bundle,並且能夠在生產模式下清除緩存?

PHP Fatal error: Class 'FOS\UserBundle\EventListener\LastLoginListener' not found in /var/www/html/HealthFitness/vendor/symfony/symfony/src/Symfony/Component/EventDispatcher/ContainerAwareEventDispatcher.php on line 142 

PHP Stack trace: 

PHP 1. {main}() /var/www/html/HealthFitness/app/console:0 

PHP 2. Symfony\Component\Console\Application->run() /var/www/html/HealthFitness/app/console:27 

PHP 3. Symfony\Bundle\FrameworkBundle\Console\Application->doRun() /var/www/html/HealthFitness/vendor/symfony/symfony/src/Symfony/Component/Console/Application.php:121 

PHP 4. Symfony\Component\DependencyInjection\Container->get() /var/www/html/HealthFitness/vendor/symfony/symfony/src/Symfony/Bundle/FrameworkBundle/Console/Application.php:86 

PHP 5. appProdProjectContainer->getEventDispatcherService() /var/www/html/HealthFitness/app/bootstrap.php.cache:2037 

PHP 6. Symfony\Component\EventDispatcher\ContainerAwareEventDispatcher->addSubscriberService() /var/www/html/HealthFitness/app/cache/prod/appProdProjectContainer.php:343 

回答

5

您的錯誤確實可能來自緩存錯誤。

你有這個錯誤執行php app/console cache:clear --env=prod

您可以手動刪除app/cache/prod/*。

+0

手動刪除app/cache/prod/*的最佳方法是什麼?是的,執行緩存後出現錯誤:clear --env = prod。 –

+0

手動的意思是'rm -rf app/cache/prod/*';)這不影響acl,讓apache權限到文件夾prod/ – Healkiss

+0

難題...工作正常!謝謝! –

0

如果你不能手動刪除文件,這也應該工作。

你也可以使用一個--no-warmup--no-optional-warmers開關:

cache:clear --no-warmup --no-optional-warmers --env=prod

這樣,它不應該試圖重建不存在的類的緩存,然後做一個

cache:warmup --env=prod

儘管手動刪除緩存的速度會更快,但您仍然會對其進行預熱。