无法识别 Symfony 路由注释

Symfony Routing annotation not recognized

我在 routing.yml 文件中声明了以下内容:

AcmeFrontendBundle:
  resource: "@AcmeFrontendBundle/Controller"
  type: annotation

然后我在控制器中这样调用它(这个有效):

use Sensio\Bundle\FrameworkExtraBundle\Configuration\Method;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
....
class ArticleVariantController extends Controller
{ 
....
/**
* Set delete status to an image
* @Route("/article-variant/soft-delete-image-ajax/{id}", name="acme_frontend_article_variant_soft_delete_image")
* @Method({"POST"})
*
* @param integer $id Article Erp Id
* @return mixed
*/
public function softDeleteImageAjaxAction($id)
{
    return $this->deleteImageHandler($id);
}

但是这条路线没有被识别为路线(只有当我将它添加到 routing.yml 文件中时——我不想这样做):

/*
* Deactivate article variant
* @Route("/article-variant/deactivate-article-variant-ajax/{id}", name="acme_frontend_deactivate_article_variant_ajax")
* @Method({"POST"})
*
* @param integer $id article Id
* @return mixed
*/
public function deactivateArticleVariantAjaxAction($id)
{
   return $this->articleVariantsHandler($id);
}

我是不是漏掉了什么?

问题出在 PHPDoc 声明...

原来是这样的:

/*
* Deactivate article variant
* @Route("/article-variant/deactivate-article-variant-ajax/{id}", name="acme_frontend_deactivate_article_variant_ajax")
* @Method({"POST"})
*
* @param integer $id article Id
* @return mixed
*/

评论开头的第二颗星应该是这样的

/** <- this one here!
* Deactivate article variant
* @Route("/article-variant/deactivate-article-variant-ajax/{id}", name="acme_frontend_deactivate_article_variant_ajax")
* @Method({"POST"})
*
* @param integer $id article Id
* @return mixed
*/

使用 PHPStorm 快捷方式 /* ctrl+enter... 应该是 /** ctrl+enter 不要将其作为注释 /* ... */ 而是作为 PHPDoc 声明。