İki profilden birini kullanan bir çalışma Spring Boot Elasticearch Uygulaması var: application.dev.properties veya application.prod.properties. Bu bölüm iyi çalışıyor. External elasticsearch uygulamasının application.xxx.properties dosyasından okunmasıyla ilgili sorun yaşıyorum. Benim çok çevre sorunu çözmez açıkçasıSpring Boot Elasticsearch Yapılandırma
@Configuration
@PropertySource(value = "classpath:config/elasticsearch.properties")
public class ElasticsearchConfiguration {
@Resource
private Environment environment;
@Bean
public Client client() {
TransportClient client = new TransportClient();
TransportAddress address = new InetSocketTransportAddress(
environment.getProperty("elasticsearch.host"),
Integer.parseInt(environment.getProperty("elasticsearch.port"))
);
client.addTransportAddress(address);
return client;
}
@Bean
public ElasticsearchOperations elasticsearchTemplate() {
return new ElasticsearchTemplate(client());
}
}
ama:
Bu çalışır.
Ayrıca, ana makine ve bağlantı noktası değişkenleri için @Value ek açıklamalarını da başarıyla denedim.
Yukarıdaki değerleri uygulama özellikleri dosyasından okumak için nasıl değiştirebilirim veya çalıştırmak istediğim profile göre farklı bir @PropertySource dosyası seçebilir miyim?
spring.data.elasticsearch.properties.host = 10.10.1.10
spring.data.elasticsearch.properties.port = 9300
Teşekkür
Neden sadece Bahar Önyükleme kullanarak ama çevresinde çalışmak için çalışmıyoruz. Yay önyükleme, seçtiğiniz profile göre bir özellik dosyasını zaten yükler. Yani temelde bunu zorlaştırıyorsunuz ... Ayrıca Spring Boot sizin için ElasticSearch'i zaten yapılandırıyor, bu yüzden neden tekrar kendiniz yapmaya çalışıyorsunuz .. –