Springboot整合Elasticsearch報錯
今天使用SpringBoot整合Elasticsearch時候,相關的配置完成后,啟動項目就報錯了。
nested exception is java.lang.IllegalStateException: availableProcessors is already set to [4], rejecting [4]
我網上查詢了一下,有人是是因為整合了Redis的原因。但是我把Redis相關的配置去掉后,問題還是沒有解決,最后有人說是因為netty沖突的問題。
也有人給出了解決方式就是在項目初始化錢設置一下一個屬性。在初始化之前加上System.setProperty(“es.set.netty.runtime.available.processors”, “false”);
@Configuration public class ElasticSearchConfig { @PostConstruct void init() { System.setProperty("es.set.netty.runtime.available.processors", "false"); } }
我按照這種方法還是沒有解決我這邊項目的問題。
最后我直接把System.setProperty(“es.set.netty.runtime.available.processors”, “false”);
發現這樣可以解決我這邊的問題。
@SpringBootApplication public class EurekaBussnissServiceUserApplication { public static void main(String[] args) { // System.out.println("==========================================="); /** * Springboot整合Elasticsearch 在項目啟動前設置一下的屬性,防止報錯 * 解決netty沖突后初始化client時還會拋出異常 * java.lang.IllegalStateException: availableProcessors is already set to [4], rejecting [4] */ System.setProperty("es.set.netty.runtime.available.processors", "false"); SpringApplication.run(EurekaBussnissServiceUserApplication.class, args); } }