Symfony3:警告:复制([...]实体/ user.php的〜):权限被拒绝

问题描述:

确切的错误是以下Symfony3:警告:复制([...]实体/ user.php的〜):权限被拒绝

[Symfony\Component\Debug\Exception\ContextErrorException] Warning:copy(/Applications/MAMP/htdocs/Project/src/MR/UserBundle/Entity/User.php~): failed to open stream: Permission denied 

我Symfony3命令:

'php bin/console doctrine:generate:entities' 

不任何人有过这种警告?或看看有什么可能导致问题?

我不知道它是否与此有关,但今天早上我犯了一个可怕的错误,'用-R选项'rm'我的用户目录(在OS X上) - 一个噩梦。我不得不重新安装mysql,并且对MAMP也一样。我的symfony项目由于它位于'htdocs'目录中而完好无损。

我和我的var /目录有同样的问题,但是用官方网站的 this tutorial解决了它。

希望得到解决,因为我不能在现在的项目工作..提前

谢谢!

+0

好吧,我从来没有见过这样的警告,但*谷歌*有。但似乎你没有在重新安装后正确设置文件系统的访问权限。 –

+0

我来到整个项目制作'chmod -R 0777'的阶段..(我只是在我的本地工作),没有任何成功 –

+0

你试过完全擦拭MAMP吗?卸载,删除整个文件夹和每个关联的文件并重新安装? –

当Symfony生成实体时,它会进行备份,在您的情况下,它备份的文件称为“User.php〜”。因此,出于某种原因,当您运行以下命令时:

php bin/console doctrine:generate:entities 

它没有写入该特定文件夹的权限。也许你必须使用sudo?或者,也许你必须以不同的用户身份登录?无论如何,这是写入备份文件的权限问题。

顺便说一下,新文件将是'User.php',并且命令完成后的备份被重命名为'User.php〜'。

希望这会有所帮助。