Php 如何在Doctrine2中安装gedmo扩展?

Php 如何在Doctrine2中安装gedmo扩展?,php,orm,tree,doctrine-orm,behavior,Php,Orm,Tree,Doctrine Orm,Behavior,我正在尝试在Doctrine2(版本2.1.3)中安装 没有扩展,一切正常。但是,当我添加annotationdriver以读取@gedmo注释时,会抛出错误,例如“未捕获异常'Doctrine\ORM\Mapping\MappingException',并显示消息“Class User2不是有效实体或映射的超类”。 这是de User2实体: <?php use \Doctrine\ORM\Mapping as ORM; /** @ORM\Entity */ class User2

我正在尝试在Doctrine2(版本2.1.3)中安装

没有扩展,一切正常。但是,当我添加annotationdriver以读取@gedmo注释时,会抛出错误,例如“
未捕获异常'Doctrine\ORM\Mapping\MappingException',并显示消息“Class User2不是有效实体或映射的超类
”。 这是de User2实体:

<?php

use \Doctrine\ORM\Mapping as ORM;

/** @ORM\Entity  */
class User2 {

    /**
     * @ORM\Column(name="id", type="integer")
     * @ORM\Id
     * @ORM\GeneratedValue
     */
    private $id;

    /** @ORM\Column(length=255) */
    private $username;
}
有几个问题:

  • 我应该为ORM注释添加驱动程序吗
  • User2类有什么问题吗
  • 如何获得更具体的用户错误,使我能够找到问题的确切原因
  • 简而言之:@orm和@gedmo注释如何工作?

    最近添加了一个注释,以展示如何在不使用任何框架的情况下配置带有扩展的裸实体管理器。 您可以按照底部的说明进行初始设置

    $reader = new \Doctrine\Common\Annotations\AnnotationReader();
    $annotationDriver = new \Doctrine\ORM\Mapping\Driver\AnnotationDriver($reader);
    
    $chain = new \Doctrine\ORM\Mapping\Driver\DriverChain;
    $chain->addDriver($annotationDriver, 'Gedmo\Tree\Entity');
    
    $config->setMetadataDriverImpl($chain);