2016-06-22 86 views
0

我運行命令Symfony的緩存清除命令不工作,但沒有緩存的方式

php app\console cache:clear 

,並得到fowllowing答案在本地環境在Windows中

[Symfony\Component\Filesystem\Exception\IOException] 
Failed to remove directory "D:\nginx\web\symfony\dev\var\cache\de~\annotations\fd" 

我第一次如果怪異檢查de〜文件夾存在並刪除它運行:

mkdir empty 
c:\Windows\System32\Robocopy.exe /MIR empty cache * 

哪一種方法也可以刪除太長的文件na mes在緩存文件夾中。

然後,我在Windows ui中檢查了緩存文件夾,我在應用程序目錄中有一個先前的緩存文件夾,現在我使用作曲家(v2.8.7)更新了Symfony,它似乎在var文件夾中。

所有這些緩存文件夾都是空的,但我仍然得到奇怪的消息,該文件夾不再存在。

我知道我使用註解來改善我的實體以創建具有正確行爲的postgresql數據庫和表,並修改了我的配置文件以使用實體管理器來更好地控制要創建哪些表表,但是我不知道是否那個錯誤來自那裏,因爲我在這些實體文件中使用了Doctrine註釋。

+0

你應該確定在緩存文件夾上設置正確的權利http://stackoverflow.com/questions/15814976/symfony-2-cache-clearing-issue – 0x13a

+0

我在Windows下,我知道一些icacls命令,但我很快選中我有權以常規或管理員身份進行讀取和寫入,但我仍然收到相同的錯誤消息。而且,緩存文件夾是空的。我想知道這個錯誤是不是來自我在實體中使用註釋時未檢測到的錯誤。 – Mantisse

回答

0

嘗試添加--no-warmup標誌緩存清除命令:

$ php app\console cache:clear --no-warmup 

這已經抵消了過去對我來說陌生的高速緩存錯誤。否則,某些錯誤的權限可能在某處設置。

+0

我檢查了權限並以管理員身份運行了該命令,即使它以前與普通帳戶一起工作。還嘗試了你正在談論的選項。 – Mantisse