Подтвердить что ты не робот

Повторно запустите Spring Обработчик загрузочной конфигурации для обновления метаданных

Я добавил:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-configuration-processor</artifactId>
    <optional>true</optional>
</dependency>

в мой pom.xml за intellij запрос/предупреждение.

Теперь я вижу "Повторно запустить Spring Обработчик аннотации загрузки для обновления метаданных".

Как мне сделать то, что intellij просит меня сделать?

Эта ссылка, B.2 Создание собственных метаданных с использованием обработчика аннотаций, не содержит инструкций.

4b9b3361

Ответ 1

Следуя этим инструкциям, я работал у меня: http://www.mdoninger.de/2015/05/16/completion-for-custom-properties-in-spring-boot.html

Это сообщение о необходимости повторного запуска обработчика аннотаций немного запутанно, так как кажется, что он остается там все время, даже если ничего не изменилось.

Кажется, что ключ перестраивает проект после добавления требуемой зависимости или после внесения каких-либо изменений свойств. После этого и возврата к файлу YAML все мои свойства теперь были связаны с классами конфигурации.

Вам может понадобиться щелкнуть кнопку "Reimport All Maven Projects" на панели Maven, чтобы получить представление файла .yaml для распознавания ссылок на соответствующий класс Java.

Ответ 2

Ни один из ответов не работал у меня. Если вы просто хотите отключить это сообщение, перейдите в Intellij Preferences → Editor → General → Appearance, снимите флажок "Показать Spring панель метаданных загрузки".

Однако вы также можете жить с этим сообщением, если это вас не слишком беспокоит, поэтому убедитесь, что вы не пропустите никаких других Spring загрузочных сообщений метаданных, которые могут вас заинтересовать.

Ответ 3

У меня была такая же проблема. Проблема заключается в том, что обработчик аннотации Spring Boot генерирует файл spring-configuration-metadata.json внутри вашей папки /target/classes/META-INF.

Если вы случайно проигнорировали эту папку в IntelliJ, как я (потому что, черт возьми, кто заботится о файлах классов?), файл не будет проиндексирован вашей IDE. Следовательно, никакого завершения и раздражающего сообщения.

Просто удалите target из списка файлов/папок ignore, расположенных в Settings > Editor > File Types > Ignore files and folders.

Ответ 4

Ни один из этих вариантов не работал у меня. Я обнаружил, что автоматическое обнаружение процессоров аннотаций будет довольно шелушащимся. Я закончил создание секции плагина в файле pom.xml, который явно устанавливает обработчики аннотации, которые используются для проекта. Преимущество этого в том, что вам не нужно полагаться на какие-либо настройки IDE.

<plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.7.0</version>
            <configuration>
                <compilerVersion>1.8</compilerVersion>
                <source>1.8</source>
                <target>1.8</target>
                <annotationProcessors>
                    <annotationProcessor>org.springframework.boot.configurationprocessor.ConfigurationMetadataAnnotationProcessor</annotationProcessor>
                    <annotationProcessor>lombok.launch.AnnotationProcessorHider$AnnotationProcessor</annotationProcessor>
                    <annotationProcessor>org.hibernate.jpamodelgen.JPAMetaModelEntityProcessor</annotationProcessor>
                </annotationProcessors>
            </configuration>
        </plugin>