ich eine yaml-Datei wie folgt: -Federverschluß spezifisches Profil yaml nicht geladen
spring:
profiles: test
msg: test
---
spring:
profiles : dev
msg: hello
---
spring:
profiles : prod
msg: production
befindet sich in /src/main/java/resources
als application.yaml
meinen Code der die Werte lesen aus dieser Datei wie
folgt@Configuration
@EnableConfigurationProperties
public class TestConfig {
private String msg;
public String getMsg() {
return msg;
}
public void setMsg(String msg) {
this.msg = msg;
}
}
erstelle ich eine Bohne dieser Klasse wie folgt: -
@Bean
public TestConfig testConfig() {
return new TestConfig();
}
Doch der Versuch, das Profil spezifische Informationen zu sehen, mit dem folgenden Code nicht funktioniert: -
public class Main implements CommandLineRunner{
@Autowired
private TestConfig testConfig;
public static void main(String[] args) {
SpringApplication.run(Main.class, args);
}
@Override
public void run(String... args) throws Exception {
System.out.println("it works!!!");
System.out.println(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>> " + testConfig.getMsg());
}
}
Alle hier Hilfe sehr geschätzt wird.
Danke, Amar
Wenn Sie Maven \ Gradle verwenden, sollte es im 'src \ main \ resources \ config'-Ordner sein. Auch die Dateierweiterung sollte' .yml' sein. –
Ich habe die Datei wie erwähnt hinzugefügt, die Erweiterung geändert, ausgeführt ./gradlew -Ddspring.profiles.active = dev sauber bootenrun. Aber es druckt Null –