【问题标题】:Exception in main thread java.lang.NoClassDefFoundError主线程 java.lang.NoClassDefFoundError 中的异常
【发布时间】:2014-11-06 07:49:37
【问题描述】:

在线程“main”java.lang.NoClassDefFoundError: com/google/common/util/concurrent/FutureCallback 中出现错误异常,同时运行以下代码。请告知缺少哪个 Jar 文件。我正在从 Eclipse IDE 执行

package Datastax;

import com.datastax.driver.core.Cluster;
import com.datastax.driver.core.Host;
import com.datastax.driver.core.Metadata;
import com.datastax.driver.core.Session;


public class DataStaxPOC {
   private Cluster cluster;

   public void connect(String node) {

       cluster = Cluster.builder().addContactPoint(node).build();

      Metadata metadata = cluster.getMetadata();

      System.out.printf("Connected to cluster: %s\n", metadata.getClusterName());

      for ( Host host : metadata.getAllHosts() ) {
         System.out.printf("Datatacenter: %s; Host: %s; Rack: %s\n",host.getDatacenter(), host.getAddress(), host.getRack());
      }
   }

   public void close() {
      cluster.shutdown();
   }

   public static void main(String[] args) {
      DataStaxPOC client = new DataStaxPOC();
      client.connect("127.0.0.1");
      client.close();
   }
}

【问题讨论】:

    标签: java eclipse cassandra datastax datastax-java-driver


    【解决方案1】:

    你需要有 cassandra-driver-core-2.0.1.jar 、 netty-3.9.0-Final.jar 、 guava-16.0.1.jar 、 metrics-core-3.0.2.jar 和 slf4j-类路径上的 api-1.7.5.jar。

    【讨论】:

      【解决方案2】:

      我也遇到了同样的问题,但是在添加了以下 jars 后问题得到了解决, 1. bsh-2.0b4.jar 2. 番石榴-16.0.1.jar 3. jcommander-1.27.jar 4.log4j-1.2.17.jar 5.lz4-1.2.0.jar 6.metrics-core-3.0.2.jar 7.netty-3.9.0.Final 8. slf4j-api-1.7.5.jar 9.slf4j-log4j12-1.7.6.jar 10. snappy-java-1.0.5.jar.

      希望对你有帮助:)

      【讨论】:

        【解决方案3】:

        要设置您的环境,您需要以下资源:

        • cassandra-driver-core-2.1.0.jar
        • netty-3.9.0-Final.jar
        • guava-16.0.1.jar
        • metrics-core-3.0.2.jar
        • slf4j-api-1.7.5.jar

        (如本链接所述:http://www.datastax.com/documentation/developer/java-driver/2.1/java-driver/reference/settingUpJavaProgEnv_r.html

        否则,如果您使用 Eclipse 之类的 IDE,则可以使用 Maven。有关依赖关系示例,请参见以下链接:http://www.datastax.com/documentation/developer/java-driver/2.1/common/drivers/introduction/driverDependencies_r.html

        请注意,您还需要确保 start_native_transport: true 位于您的 cassandra.yaml 配置文件中,上述链接也列出了这一点。

        要将 Maven 安装到 Eclipse 中,我建议使用这个出色的分步操作:Maven in Eclipse: step by step installation

        希望这会有所帮助!

        【讨论】:

          猜你喜欢
          • 2011-09-14
          • 2012-11-18
          • 1970-01-01
          • 1970-01-01
          • 2016-09-29
          • 2019-06-19
          • 2012-12-17
          相关资源
          最近更新 更多