Symfony2.1 [语义错误]类“注释”未使用@Annotation注释

时间:2012-10-11 16:09:30

标签: symfony doctrine

我尝试将Symfony 2.0应用程序升级到2.1,但我被阻止了...... :(

这是我尝试新的作曲家更新时的错误消息(我的所有包/包已经是最新的),或者当我尝试显示网页时:

Loading composer repositories with package information
Updating dependencies                                     
Generating autoload files

  [Doctrine\Common\Annotations\AnnotationException]                                                                                                                                                                                                                                                                                                                                                              
  [Semantical Error] The class "Annotation" is not annotated with @Annotation. Are you sure this class can be used as annotation? If so, then you need to add @Annotation to the _class_ doc comment of "Annotation". If it is indeed no annotation, then you need to add @IgnoreAnnotation("Annotation") to the _class_ doc comment of class @Sensio\Bundle\FrameworkExtraBundle\Configuration\ParamConverter.  

Script Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::clearCache handling the post-update-cmd event terminated with an exception

  [RuntimeException]                                                         
  An error occurred when executing the "'cache:clear --no-warmup'" command.

我们已经使用composer for Symfon2.0 app。 composer.json文件:

"symfony/symfony":               "2.1.*@stable",
"doctrine/orm":                  "2.3.*@stable",
"doctrine/doctrine-bundle":      "1.0.*@stable",
"twig/extensions":               "1.0.*",
"symfony/assetic-bundle":        "2.1.*@stable",
"symfony/swiftmailer-bundle":    "2.1.*@stable",
"symfony/monolog-bundle":        "2.1.*@stable",
"sensio/distribution-bundle":    "2.1.*@stable",
"sensio/framework-extra-bundle": "2.1.*@stable",
"sensio/generator-bundle":       "2.1.*@stable",
"jms/security-extra-bundle":     "1.2.*@stable",
"jms/di-extra-bundle":           "1.1.*@stable",

"craue/twigextensions-bundle":       "dev-master",
"friendsofsymfony/rest-bundle":      "0.9.*@stable",
"friendsofsymfony/user-bundle":      "1.3.*@stable",
"genemu/form-bundle":                "2.1.x-dev",
"google/api-client":                 "0.5.0",
"knplabs/knp-menu-bundle":           "1.1.*@stable",
"knplabs/knp-paginator-bundle":      "2.2",
"leafo/lessphp":                     "0.3.*@stable",
"mopa/bootstrap-bundle":             "2.1.*",
"natxet/CssMin":                     "dev-master",
"stof/doctrine-extensions-bundle":   "1.1.x-dev",
"twitter/bootstrap":                 "2.0.4",

使用ParamConverter注释:

   /**
     * @ParamConverter("someEntity", class="VendorSomeBundle:SomeEntity", options={"entity_manager" = "someentitymanagername"})
     */

我从Symfony 2.1复制/粘贴了web / app.php,app / autoload.php文件。

1 个答案:

答案 0 :(得分:0)

使用Symfony2.1,您不再需要ParamConverter注释。以下示例将触发查询并为您提供所需的实体。

   /**
    * @Route("/id/randomroute", name="random_route")
    */
    public function highconnexionAction(Entity $entity)

但我不明白为什么你的注释不起作用......