What I did:
- In application.properties added
application.config.admin-role-name=ADMIN
- In build.gradle added
dependencies {
...
annotationProcessor "org.springframework.boot:spring-boot-configuration-processor"
}
- In *Application.java file annotated the *Application class with
@ConfigurationPropertiesScan
- Annotated one of my @Configuration classes with
@EnableConfigurationProperties(ApplicationStartupConfig.class)
- Created the following ApplicationStartupConfig class:
@Component
@ConfigurationProperties(prefix = "application.config")
public class ApplicationStartupConfig {
private String adminRoleName;
public String getAdminRoleName() {
return adminRoleName;
}
public void setAdminRoleName(String adminRoleName) {
this.adminRoleName = adminRoleName;
}
}
- Finally, cleaned with gradle, built with gradle and did IDE’s Refresh Gradle Project
Unfortunately, even though ApplicationStartupConfig is successfully populated on startup (I can use it via @Autowired in my ApplicationRunner code), Eclipse says:
‘application.config.admin-role-name’ is an unknown property. application.properties