簡體   English   中英

為什么我在Elasticsearch構建節點中得到java.lang.nullpointerexception?

[英]Why I got java.lang.nullpointerexception in elasticsearch build node?

我已經使用Elasticsearch和非常簡單的代碼行測試了我的應用程序。 像這樣 :

Node node = nodeBuilder()
        .settings(Settings.settingsBuilder().put("cluster.name", "elasticsearch").put("clster.transport.sniff", true).put("path.home", "/home/kenny/Program/Java/elastic"$
        .node();

但是我有這樣的錯誤:

Exception in thread "main" java.lang.NullPointerException
at java.io.Reader.<init>(Reader.java:78)
at java.io.InputStreamReader.<init>(InputStreamReader.java:113)
at org.elasticsearch.node.internal.InternalSettingsPreparer.randomNodeName(InternalSettingsPreparer.java:198)
at org.elasticsearch.node.internal.InternalSettingsPreparer.finalizeSettings(InternalSettingsPreparer.java:177)
at org.elasticsearch.node.internal.InternalSettingsPreparer.prepareEnvironment(InternalSettingsPreparer.java:101)
at org.elasticsearch.node.Node.<init>(Node.java:128)
at org.elasticsearch.node.NodeBuilder.build(NodeBuilder.java:145)
at org.elasticsearch.node.NodeBuilder.node(NodeBuilder.java:152)
at TryElastic.main(TryElastic.java:56)

我不知道如何解決此問題,我已經嘗試過並尋找解決方案。 錯誤日志的第56行,請參考上面的“ .node()”方法。 所以,你有建議嗎,或者我必須在代碼中添加一些內容

謝謝.....

發生這種情況的唯一方法是由於path.home的配置錯誤。

當Elasticsearch嘗試為您的實例生成隨機節點名稱時,它將在{path.home}/config/names.txt 查找文件

如果找不到該文件,則將收到一個(相當不友好且無濟於事的) NullPointerException

因此,解決方案是檢查“ / home / kenny / Program / Java / elastic”是否確實是ES安裝的頂層。

有關正確目錄布局的文檔,請參見此處。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM