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: 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
).
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).
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.
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.
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')
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)