u12345
u12345

Reputation: 389

how to solve java.lang.NoClassDefFoundError: org/apache/curator/RetryPolicy in storm

How can i solve

java.lang.NoClassDefFoundError: com/google/common/base/Preconditions at org.apache.curator.ensemble.fixed.FixedEnsembleProvider.(FixedEnsembleProvider.java:39) at org.apache.curator.framework.

and

java.lang.NoClassDefFoundError: org/apache/curator/RetryPolicy

in storm-kafka integration.

I am using:

updated

pom.xml

    <dependency>
        <groupId>org.scala-lang</groupId>
        <artifactId>scala-reflect</artifactId>
        <version>2.10.2</version>
    </dependency>
    <dependency>
        <groupId>org.apache.storm</groupId>
        <artifactId>storm-kafka</artifactId>
        <version>0.9.3</version>
    </dependency>
    <dependency>
        <groupId>org.apache.kafka</groupId>
        <artifactId>kafka_2.9.2</artifactId>
        <version>0.8.1.1</version>
    </dependency>
    <dependency>
        <groupId>org.apache.zookeeper</groupId>
        <artifactId>zookeeper</artifactId>
        <version>3.4.6</version>
        <exclusions>
            <exclusion>
                <groupId>com.sun.jmx</groupId>
                <artifactId>jmxri</artifactId>
            </exclusion>
            <exclusion>
                <groupId>com.sun.jdmk</groupId>
                <artifactId>jmxtools</artifactId>
            </exclusion>
            <exclusion>
                <groupId>javax.jms</groupId>
                <artifactId>jms</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
    <dependency>
        <groupId>org.apache.storm</groupId>
        <artifactId>storm-core</artifactId>
        <version>0.9.3</version>
    </dependency>
    <dependency>
        <groupId>redis.clients</groupId>
        <artifactId>jedis</artifactId>
        <version>2.6.0</version>
        <type>jar</type>
        <scope>compile</scope>
    </dependency>

Upvotes: 2

Views: 15931

Answers (2)

Neo
Neo

Reputation: 4900

For org/apache/curator/RetryPolicy, you should use

<dependency>
  <groupId>org.apache.curator</groupId>
  <artifactId>curator-client</artifactId>
  <version>2.11.0</version>
</dependency>

Note for ZooKeeper 3.4.6, the latest version (as of this post) compatible for Curator is 2.11.0.

However curator-client also needs curator-framework. So you might want to add

<dependency>
  <groupId>org.apache.curator</groupId>
  <artifactId>curator-framework</artifactId>
  <version>2.11.0</version>
</dependency>

Upvotes: 2

Pranjal Sahu
Pranjal Sahu

Reputation: 1469

Add the following lines in your pom.xml

<dependency>
  <groupId>org.apache.curator</groupId>
  <artifactId>curator-test</artifactId>
  <version>2.4.0</version>
  <exclusions>
    <exclusion>
      <groupId>org.jboss.netty</groupId>
      <artifactId>netty</artifactId>
    </exclusion>
    <exclusion>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-log4j12</artifactId>
    </exclusion>
  </exclusions>
</dependency>

Upvotes: 1

Related Questions