How to create node client in Elastic search 2.3.1

We are trying to create the node client in Elastic search 2.3.1.
Please let me know the procedure

We tried as below

node = nodeBuilder().settings(
Settings.settingsBuilder() .put("node.name", "tb_es_indexer")
.put("path.home", "/app_dirs/mpt/common_apps/elasticsearch-2.3.1/")
.put("path.conf", "/app_dirs/mpt/common_apps/elasticsearch-2.3.1/config")
.put("path.plugins", "/app_dirs/mpt/common_apps/elasticsearch-2.3.1/plugins")
.build()).node();

but it throws the error that it cant load the jars in module folder

Caused by: java.lang.IllegalStateException: failed to load bundle [file:/D:/app_dirs/mpt/common_apps/elasticsearch-2.3.1/modules/lang-expression/antlr4-runtime-4.5.1-1.jar, file:/D:/app_dirs/mpt/common_apps/elasticsearch-2.3.1/modules/lang-expression/asm-5.0.4.jar, file:/D:/app_dirs/mpt/common_apps/elasticsearch-2.3.1/modules/lang-expression/asm-commons-5.0.4.jar, file:/D:/app_dirs/mpt/common_apps/elasticsearch-2.3.1/modules/lang-expression/lang-expression-2.3.1.jar, file:/D:/app_dirs/mpt/common_apps/elasticsearch-2.3.1/modules/lang-expression/lucene-expressions-5.5.0.jar] due to jar hell

what do your dependencies look like in your pom file, assuming you are using maven?

Hi Java

In our code, we used the ivy to manage the dependancy and it contains all the dependancy
We placed the elastic search folder in location /app_dirs/mpt/common_apps/elasticsearch-2.3.1/

While we tried to run the junit by creating the nodeclient , path.home is required to create the client but we faced some issue to load the kuromoji plugin (under plugin folder) and groovy jars(under modules folder) and we tried by above code.

Whether we can create the node client without the path.home directory structure
We can able to load the config , plugins, data folder except modules folder