我创建了一个非常简单的Symfony(3.4)项目,只有一个api打印出一个静态json。
当我第一次运行api时一切正常,但是第二次我遇到了这个错误:
(1/1) FatalErrorException
Compile Error: Cannot redeclare class Symfony\Bundle\FrameworkBundle\Controller\ControllerNameParser
in ControllerNameParser.php (line 24)
这就是为什么在cache/{env}/classes.php
里面重新定义了这个类。实际上,清除缓存会使api工作,但这只是第一次。
我该如何解决这个问题?我认为可能是与composer.json autoload相关的东西,这里是剪辑
"autoload": {
"psr-4": {
"AppBundle\\": "src/AppBundle",
"MyCompany\\TypeBundle\\": "src/MyCompany/TypeBundle"
},
"classmap": [
"app/AppKernel.php",
"app/AppCache.php"
]
},
提前致谢
答案 0 :(得分:3)
尝试这样做: 在composer.json中将版本从3.4。*更改为3.3。*和作曲家更新symfony / symfony 比改变3.3。*到3.4。* back和composer update symfony / symfony
对我来说它解决了这个问题。尝试。