2016-04-25 36 views
0

我正在使用elasticsearch-2.2.0版本。我需要使用JAVA API啓用腳本。 基本上我想用NodeBuilder創建一個節點並啓用腳本支持。使用Java API在elasticsearch-2.2.0中啓用腳本

我嘗試設置屬性 「script.inline:真正的」 和 「script.indexed:真」,如下:

Settings settings = Settings.builder().put("script.inline", true).put("script.indexed", true).build(); 

但它仍然沒有工作。

有沒有辦法使用JAVA在elasticsearch-2.2.0版本中啓用腳本?

+0

你在日誌中收到任何錯誤? – Val

+0

是的我收到錯誤:線程「main」中的異常java.lang.NoClassDefFoundError:org/elasticsearch/plugins/AbstractPlugin at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(Unknown源代碼) at java.security.SecureClassLoader.defineClass(Unknown Source) at java.net.URLClassLoader.defineClass(Unknown Source) – Shailendra

+0

你能在客戶端代碼中顯示你的pom.xml中有哪些elasticsearch依賴關係嗎? – Val

回答

1

這與this issue類似,似乎在創建本地NodeClient時,lang-groovy模塊默認未加載。

所以你需要添加在你的pom.xml另一個依賴

<dependency> 
    <groupId>org.elasticsearch.module</groupId>  
    <artifactId>lang-groovy</artifactId> 
    <version>2.2.0</version> 
</dependency>