Ошибка с пользовательскими аннотациями doctrine: [Ошибка создания] Аннотация, объявленная в свойстве, не имеет свойства с именем «отображение

#php #symfony #doctrine-orm #doctrine

#php #symfony #doctrine-orm #doctrine

Вопрос:

Когда я пытаюсь связать аннотацию в моем классе с классом аннотаций, я продолжаю получать следующую ошибку:

 [Creation Error] The annotation @VerzeilbergUploadField declared on property AppEntityUserProfile::$image does not have a property named "mapping". Available properties:
  

У меня есть следующий класс, в котором я реализую аннотацию:

 <?php

namespace AppEntity;

use DoctrineORMMapping as ORM;
use verzeilbergUploadImagesBundleMappingAnnotation as Verzeilberg;

/**
 * @ORMEntity(repositoryClass="AppRepositoryUserProfileRepository")
 */
class UserProfile
{

.........................

    /**
     * @VerzeilbergUploadField(mapping="profile_image")
     */
    protected $image;

............................
  

И это класс аннотации:

 
<?php


namespace verzeilbergUploadImagesBundleMappingAnnotation;

/**
 * @Annotation
 * @Target({"PROPERTY"})
 */
class UploadField
{

    /**
     * @var string
     */
    protected $mapping;

    /**
     * @return string
     */
    public function getMapping(): string
    {
        return $this->mapping;
    }

    /**
     * @param string $mapping
     */
    public function setMapping(string $mapping): void
    {
        $this->mapping = $mapping;
    }

  

Я следовал следующему примеру аннотации Doctrine:

Введение в аннотацию Doctrine

Но чего мне не хватает?

Комментарии:

1. на данной странице документации свойство аннотации помечено как public и больше не нуждается в getter / setter.

2. Я уже пробовал это. Но продолжайте получать ту же ошибку.

3. @VieStar это странно, вы правильно очистили кеш?

4. Ответ, данный bij @rugolinifr, был правильным ответом. Я не знаю, почему это сработало внезапно, но это так.