web-dev-qa-db-fra.com

@ConfigurationProperties Configuration du démarrage de la configuration d'amorçage du printemps introuvable dans le chemin d'accès aux classes

J'essaie de compléter les propriétés personnalisées dans Spring Boot.
J'ai essayé de créer un projet simple via IntelliJ IDEA 2016.3:
1. Création d'un nouveau projet Gradle avec Spring Boot Initializer (je n'ai rien vérifié du tout).
2. Création d'une nouvelle classe Properties.
3. Lorsque je l'ai annoté avec @ConfigurationProperties, la notification suivante est apparue:  notification La documentation dit que je devrais ajouter ce qui suit à mon projet:

dependencies {
    optional "org.springframework.boot:spring-boot-configuration-processor"
}

compileJava.dependsOn(processResources)

Après cela, j'ai essayé de reconstruire le projet et d'activer les processeurs d'annotation dans les paramètres, mais la notification n'a pas disparu. La complétion ne fonctionne pas aussi (j'ai créé une chaîne my).

28
Feeco

J'ai oublié d'ajouter propdeps-plugin . Cependant, je me souviens que cela ne fonctionnait pas pour moi même avec le plugin de 2016.3. Donc, comme @CrazyCoder l'a mentionné, essayez de rétrograder Gradle ou de télécharger la nouvelle version 2017.1 ( détails ).
Vous pouvez également recevoir Re-run Spring Boot Configuration Annotation Processor to update generated metadata lorsque vous résolvez ce problème. Pour cela, cliquez sur Refresh all Gradle projects (dans le menu latéral Gradle).

7
Feeco

J'ai eu le même problème. J'utilise les idées 2017.2 et 4.1, .__ et un blog a dit que vous devriez ajouter:

dependencies {
    optional "org.springframework.boot:spring-boot-configuration-processor"
}

Mais je l'ai changé en ceci:

dependencies {
    compile "org.springframework.boot:spring-boot-configuration-processor"
}

Et l'avertissement est parti.

13
Icex

Selon les docs Spring Boot , la configuration correcte depuis Gradle 4.6 est la suivante: 

dependencies {
    annotationProcessor group: 'org.springframework.boot', name: 'spring-boot-configuration-processor'
    // ...
}

Mais IntelliJ IDEA ne supporte pas (encore) annotationProcessor scope. Upvote IDEA-187868 si vous souhaitez attirer l'attention sur ce problème.

2
naXa

J'ai eu le même problème avec IntelliJ version 2018.1.2. Je devais aussi définir la version actuelle de spring-boot-configuration-processeur pour que cela fonctionne 

compile('org.springframework.boot:spring-boot-configuration-processor:2.0.1.RELEASE') 
1
vargapeti

travaux suivants pour moi:

buildscript {
    repositories {
        jcenter()
        maven { url 'https://repo.jenkins-ci.org/public/' }
        maven { url 'http://repo.spring.io/plugins-release' }
    }
    dependencies {
        classpath "io.spring.gradle:propdeps-plugin:0.0.9.RELEASE"
    }
}

...

apply plugin: 'propdeps'
apply plugin: 'propdeps-Eclipse'
apply plugin: 'propdeps-idea'

...

dependencyManagement {
    imports {
        mavenBom 'org.springframework.boot:spring-boot-starter-parent:2.0.0.RELEASE'
    }
}

...

dependencies {
    compile "org.springframework.boot:spring-boot-starter"
    compile "org.springframework.boot:spring-boot-starter-actuator"
    annotationProcessor "org.springframework.boot:spring-boot-configuration-processor" // for @ConfigurationProperties, make sure compileJava.dependsOn(processResources)
    ...
}

compileJava.dependsOn(processResources)
0
Dirk Hoffmann