2017-09-11 53 views
0

我安裝了EkinoWordpressBundle,後來刪除它,因爲我相信我不再需要它。作曲家依賴被刪除後被調用,強制緩存清除和新鮮結帳

當我進入我的應用程序,我得到這個錯誤:

Symfony\Component\Debug\Exception\ClassNotFoundException: Attempted to load class "WordpressResponseSubscriber" from namespace "Ekino\WordpressBundle\Event\Subscriber". Did you forget a "use" statement for another namespace? in /private/var/www/cache/prod/classes.php on line 1950

當我刪除classes.php手動然後我得到這個錯誤:

Symfony\Component\Debug\Exception\ClassNotFoundException: Attempted to load class "WordpressResponseSubscriber" from namespace "Ekino\WordpressBundle\Event\Subscriber". Did you forget a "use" statement for another namespace? in /Library/WebServer/Documents/crmpicco/symfony/vendor/symfony/symfony/src/Symfony/Component/EventDispatcher/ContainerAwareEventDispatcher.php on line 152

我有一個WordPress的應用程序和Symfony的應用坐在一起彼此,這是工作,直到我開始刪除提及EkinoWordpressBundle。有些背景參見my other question

爲什麼這個WordpressResponseSubscriber被我的應用程序首先與作曲家刪除它,然後用新的結帳被引用?

+0

'grep -R'WordpressResponseSubscriber''可能有用 – Devon

+0

@crmpicco你能分享你的作曲家文件嗎?或者至少有你的依賴的部分? – PhiloEpisteme

+0

@PhiloEpisteme當然,這裏是https://gist.github.com/crmpicco/a6cc64c4cae9384d51ff38d5738a4a09 – crmpicco

回答

0

看起來像EkinoWordpressBundle有一些依賴性問題。您可能有運氣,如果你嘗試做以下

  1. composer.json

  2. 運行composer update EkinoWordpressBundle

以上是從類似的問題和答案的來源刪除違規依賴kzpap

Composer: remove a package, clean up dependencies, don't update other packages

您可能需要先使用--dry-run標誌運行它,以查看它會做出哪些更改。

另請注意,如果您使用作曲家< 1.0.0-beta2。查看更新日誌here。如果你確實有一箇舊版本的作曲家,你應該可以使用--update-with-dependencies標誌。

以上命令的作用是更新EkinoWordPressBundle以及依賴它的東西。這包括vendor目錄中的文件。在你的情況下,更新是刪除它。

如果您仍然遇到classes.php問題,您可以嘗試刪除作曲家的緩存。

composer clear-cache 

請記住,運行上述可能會有明顯的初始性能問題,因爲作曲家不會有緩存操作。

結帳明確的緩存等

當然作曲家的文檔,這是可能的,你可能有依賴於去除依賴非作曲家託管類,這些都會被你刪除。

+0

感謝您的回答。我已經從composer.json中刪除了該捆綁包,並在該捆綁包上運行了作曲家更新。我是最新的作曲家。我嘗試使用您提供的命令清除作曲家緩存,但重新出現參考。很難看到這個電話來自哪裏,因爲我考慮了一下新的代碼副本。 – crmpicco

+0

@crmpicco如果你只是刪除整個供應商文件夾,並用'composer install'重新安裝? – Pete

+0

@Pete是的,這是我有效地完成了一個新的結帳。 – crmpicco