3

我尝试将 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.

我们已经为 Symfon2.0 应用程序使用了 composer。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 文件。

4

1 回答 1

0

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

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

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

于 2012-10-12T08:01:34.493 回答