我目前正在使用Symfony2进行项目,我不需要Doctrine Bundle。我曾尝试在很多场合删除它,但我不断遇到错误导致安装失败。
我已经对app目录中的所有“Doctrine”实例进行了grep,并在以下文件中注释了对Doctrine的任何引用:
然后我清除了缓存(当前在开发模式下工作,因此删除了缓存/ dev目录)。
我目前得到的错误是: 致命错误:第45行的/path/to/application/app/cache/dev/appDevDebugProjectContainer.php中找不到类'Doctrine \ Common \ Annotations \ FileCacheReader'
这是指缓存中的这段代码
/**
* Gets the 'annotation_reader' service.
*
* This service is shared.
* This method always returns the same instance of the service.
*
* @return Doctrine\Common\Annotations\FileCacheReader A Doctrine\Common\Annotations\FileCacheReader instance.
*/
protected function getAnnotationReaderService()
{
return $this->services['annotation_reader'] = new \Doctrine\Common\Annotations\FileCacheReader(new \Doctrine\Common\Annotations\AnnotationReader(), '/path/to/application/app/cache/dev/annotations', true);
}
但我无法找到一种方法来阻止将其添加到缓存中,因为我找不到与annotation_reader相关的任何设置。
任何人都可以帮忙吗?
答案 0 :(得分:5)
Symfony使用Doctrine的注释库。您不需要Doctrine的ORM或DBAL,您可以删除它们。但是,如果在项目中的任何位置使用注释,则需要注释阅读器。
编辑:你必须自己测试它。我自己从未尝试过。这些捆绑包似乎使用注释阅读器:
请注意,这可能不值得。如果您没有使用给定的服务,则不会创建它们。
答案 1 :(得分:1)