ElasticSearch java.lang.IllegalStateException: jar hell
<p>I was able to run my application previously but since today when i tried some experiments it gives me jar hell error out of sudden. Which I have no idea what this exception about, and now my project couldn't work anymore. This is the error causes:</p>

<pre><code>44   [main] DEBUG org.elasticsearch.bootstrap  - examining jar: /usr/local/apache-tomcat-7.0.62/lib/annotations-api.jar
55   [main] DEBUG org.elasticsearch.bootstrap  - examining jar: /usr/local/apache-tomcat-7.0.62/lib/catalina-ant.jar
57   [main] DEBUG org.elasticsearch.bootstrap  - examining jar: /usr/local/apache-tomcat-7.0.62/lib/catalina-ha.jar
59   [main] DEBUG org.elasticsearch.bootstrap  - examining jar: /usr/local/apache-tomcat-7.0.62/lib/catalina-tribes.jar
62   [main] DEBUG org.elasticsearch.bootstrap  - examining jar: /usr/local/apache-tomcat-7.0.62/lib/catalina.jar
Exception in thread "main" java.lang.IllegalStateException: failed to load bundle [] due to jar hell
    at org.elasticsearch.plugins.PluginsService.loadBundles(PluginsService.java:338)
    at org.elasticsearch.plugins.PluginsService.&lt;init&gt;(PluginsService.java:109)
    at org.elasticsearch.node.Node.&lt;init&gt;(Node.java:146)
    at org.elasticsearch.node.Node.&lt;init&gt;(Node.java:128)
    at org.elasticsearch.node.NodeBuilder.build(NodeBuilder.java:145)
    at com.elastic.Main.main(Main.java:38)
Caused by: java.lang.IllegalStateException: jar hell!
class: org.apache.catalina.util.Base64
jar1: /usr/local/apache-tomcat-7.0.62/lib/catalina-ant.jar
jar2: /usr/local/apache-tomcat-7.0.62/lib/catalina.jar
    at org.elasticsearch.bootstrap.JarHell.checkClass(JarHell.java:280)
    at org.elasticsearch.bootstrap.JarHell.checkJarHell(JarHell.java:186)
    at org.elasticsearch.plugins.PluginsService.loadBundles(PluginsService.java:336)
    ... 5 more
</code></pre>

<p>Why is the jar hell occurring? I never seen this before in my developer life and my application was workable before today. Am I missing something important to implement elasticsearch? Here is my code snippet.</p>

<pre><code>Settings.Builder settings = Settings.settingsBuilder();
        settings.put("path.home", Paths.get("").toAbsolutePath().toString() + File.separator + "resource" + File.separator + "elasticsearch-2.1.2");
        settings.put("cluster.name","mySearch");

        Node node = NodeBuilder.nodeBuilder().settings(settings).build().start(); 
        Client client = node.client();
</code></pre>

<p>Any helps or clues are welcome and greatly appreciate</p>

<p><strong>EDIT 1:</strong></p>

<p>I was not using VM argument to determine the ES home path as I need to take the project into different paths and platforms when I transferring project.</p>

<p><strong>EDIT 2:</strong></p>

<p>I tried to change my project with elastic home path in VM argument also won't work anymore because I did following the solution that mentioned with this <a href="https://github.com/elastic/elasticsearch/issues/12737" rel="nofollow">link</a>, but error still raise.</p>