# java.lang.NoClassDefFoundError: org/elasticsearch/transport/Netty4Plugin

**URL:** https://discuss.elastic.co/t/java-lang-noclassdeffounderror-org-elasticsearch-transport-netty4plugin/110959
**Category:** Elasticsearch
**Created:** [December 10, 2017, 8:33am UTC](https://discuss.elastic.co/t/java-lang-noclassdeffounderror-org-elasticsearch-transport-netty4plugin/110959 "2017-12-10T08:33:34Z")
**Posts on this page:** 13
**Page:** 1

<div class="post-metadata">

### Author: ![Anjana\_Surendrababu](https://avatars.discourse-cdn.com/v4/letter/a/b19c9b/32.png) [@Anjana\_Surendrababu](https://discuss.elastic.co/u/Anjana_Surendrababu)
#### Post date: [December 10, 2017, 8:33am UTC](https://discuss.elastic.co/t/java-lang-noclassdeffounderror-org-elasticsearch-transport-netty4plugin/110959/1 "2017-12-10T08:33:34Z")

</div>

I am getting this error on tomcat start. **java.lang.NoClassDefFoundError: org/elasticsearch/transport/Netty4Plugin**

I am using elasticsearch-6.0.0.jar, transport-5.6.4.jar. In maven it showed 5 other jars having compiler dependecy with transport.jar . I added even those 5 in my classpath. Still I am getting this error. Basically my project was using elasticsearch-1.7 and I am trying to upgrade it.

```
Client client = new PreBuiltTransportClient(settings)
			.addTransportAddress(new TransportAddress(InetAddress.getByName(ESHost1), ESPort))
			.addTransportAddress(new TransportAddress(InetAddress.getByName(ESHost2), ESPort));

```

Am I missing something here?

---

<div class="post-metadata">

### Author: ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)
#### Post date: [December 10, 2017, 9:48am UTC](https://discuss.elastic.co/t/java-lang-noclassdeffounderror-org-elasticsearch-transport-netty4plugin/110959/2 "2017-12-10T09:48:00Z")

</div>

There’s something wrong as you can see a 6.0.0 jar mixed with a 5.6.4.

Something is wrong in your pom.xml I guess.

Did you read the Java client documentation?

BTW what is your elasticsearch server version?

---

<div class="post-metadata">

### Author: ![antitech](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/antitech/32/25243_2.png) [@antitech](https://discuss.elastic.co/u/antitech)
#### Post date: [December 10, 2017, 9:55am UTC](https://discuss.elastic.co/t/java-lang-noclassdeffounderror-org-elasticsearch-transport-netty4plugin/110959/3 "2017-12-10T09:55:24Z")

</div>

I was facing same issue. Please update Netty with 4.1.13 dependency in yor pom.

---

<div class="post-metadata">

### Author: ![Anjana\_Surendrababu](https://avatars.discourse-cdn.com/v4/letter/a/b19c9b/32.png) [@Anjana\_Surendrababu](https://discuss.elastic.co/u/Anjana_Surendrababu)
#### Post date: [December 10, 2017, 11:05am UTC](https://discuss.elastic.co/t/java-lang-noclassdeffounderror-org-elasticsearch-transport-netty4plugin/110959/4 "2017-12-10T11:05:14Z")

</div>

I changed the transport jar to 6.0. My elasticsearch server is 6.0.1. My project is SVN. I am not using pom.xml. All the required jars I am downloading manually and adding into my classpath. ![jars](https://us1.discourse-cdn.com/elastic/original/3X/5/d/5d196f588d6a09d88b0f94ae1353816e4318b9c8.png)

Now on tomcat restart I am getting

> java.lang.NoClassDefFoundError: org/elasticsearch/common/settings/Settings

---

<div class="post-metadata">

### Author: ![Anjana\_Surendrababu](https://avatars.discourse-cdn.com/v4/letter/a/b19c9b/32.png) [@Anjana\_Surendrababu](https://discuss.elastic.co/u/Anjana_Surendrababu)
#### Post date: [December 10, 2017, 11:15am UTC](https://discuss.elastic.co/t/java-lang-noclassdeffounderror-org-elasticsearch-transport-netty4plugin/110959/5 "2017-12-10T11:15:59Z")

</div>

I am using 4.1.18

---

<div class="post-metadata">

### Author: ![antitech](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/antitech/32/25243_2.png) [@antitech](https://discuss.elastic.co/u/antitech)
#### Post date: [December 10, 2017, 11:26am UTC](https://discuss.elastic.co/t/java-lang-noclassdeffounderror-org-elasticsearch-transport-netty4plugin/110959/6 "2017-12-10T11:26:50Z")

</div>

Can u please update transport to 6.0.0 in pom.

---

<div class="post-metadata">

### Author: ![antitech](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/antitech/32/25243_2.png) [@antitech](https://discuss.elastic.co/u/antitech)
#### Post date: [December 10, 2017, 11:57am UTC](https://discuss.elastic.co/t/java-lang-noclassdeffounderror-org-elasticsearch-transport-netty4plugin/110959/8 "2017-12-10T11:57:36Z")

</div>

Saw the snapshot. Try to add these jars in buildpath.

---

<div class="post-metadata">

### Author: ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)
#### Post date: [December 10, 2017, 12:30pm UTC](https://discuss.elastic.co/t/java-lang-noclassdeffounderror-org-elasticsearch-transport-netty4plugin/110959/9 "2017-12-10T12:30:45Z")

</div>

Didn't you say:

> In maven it showed 5 other jars

It means to me that you are using maven to list the needed dependencies, no?

---

<div class="post-metadata">

### Author: ![Anjana\_Surendrababu](https://avatars.discourse-cdn.com/v4/letter/a/b19c9b/32.png) [@Anjana\_Surendrababu](https://discuss.elastic.co/u/Anjana_Surendrababu)
#### Post date: [December 10, 2017, 12:36pm UTC](https://discuss.elastic.co/t/java-lang-noclassdeffounderror-org-elasticsearch-transport-netty4plugin/110959/10 "2017-12-10T12:36:36Z")

</div>

I downloaded the jars from there and added in mine

---

<div class="post-metadata">

### Author: ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)
#### Post date: [December 10, 2017, 1:34pm UTC](https://discuss.elastic.co/t/java-lang-noclassdeffounderror-org-elasticsearch-transport-netty4plugin/110959/11 "2017-12-10T13:34:22Z")

</div>

I got that. But how do you know what are the needed deps?

---

<div class="post-metadata">

### Author: ![Anjana\_Surendrababu](https://avatars.discourse-cdn.com/v4/letter/a/b19c9b/32.png) [@Anjana\_Surendrababu](https://discuss.elastic.co/u/Anjana_Surendrababu)
#### Post date: [December 10, 2017, 1:53pm UTC](https://discuss.elastic.co/t/java-lang-noclassdeffounderror-org-elasticsearch-transport-netty4plugin/110959/12 "2017-12-10T13:53:52Z")

</div>

I know it sound weird. I was running the method through main and whenever I got class not found exception I was finding those jars and adding. Actually the issue which I mentioned seems to work now, but still my tomcat is not starting. **java.lang.IncompatibleClassChangeError: Implementing class**.

---

<div class="post-metadata">

### Author: ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)
#### Post date: [December 10, 2017, 2:36pm UTC](https://discuss.elastic.co/t/java-lang-noclassdeffounderror-org-elasticsearch-transport-netty4plugin/110959/13 "2017-12-10T14:36:11Z")

</div>

What you should do is to create a simple `pom.xml` with this single dependency:

```auto
<dependency>
    <groupId>org.elasticsearch.client</groupId>
    <artifactId>transport</artifactId>
    <version>6.0.1</version>
</dependency>

```

Then run:

```auto
mvn dependency:tree 

```

This will give you the exact list you need.

That said, you might suffer from some conflicts with the embedded libs that tomcat is using. This is what you need to figure out I guess.

---

<div class="post-metadata">

### Author: ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)
#### Post date: [January 7, 2018, 2:37pm UTC](https://discuss.elastic.co/t/java-lang-noclassdeffounderror-org-elasticsearch-transport-netty4plugin/110959/14 "2018-01-07T14:37:04Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
