java - 我正在尝试以下代码,但它显示异常 :java. lang.NoSuchFieldError

标签 java exception cassandra

685 [main] INFO org.apache.cassandra.cql.jdbc.CassandraConnection - Connected to localhost:9160 using Keyspace demo and CQL version 2.0.0 Connected ABC Exception in thread "main" java.lang.NoSuchFieldError: schema at org.apache.cassandra.cql.jdbc.CassandraResultSet.(CassandraResultSet.java:121) at org.apache.cassandra.cql.jdbc.CassandraStatement.doExecute(CassandraStatement.java:167) at org.apache.cassandra.cql.jdbc.CassandraStatement.executeQuery(CassandraStatement.java:227) at App.main(App.java:32)

这是代码:

try 
{ 
    Class.forName("org.apache.cassandra.cql.jdbc.CassandraDriver"); 
    Connection conn = DriverManager.getConnection("jdbc:cassandra://localhost:9160/demo"); 

    if (conn != null)
    {
            System.out.println("Connected");
    }



    //String sql = "INSERT INTO employee (eid,eadd,ename,esal,sex) VALUES (2499,'bangalore','amit',10000,'male')"; 
    Statement stmt = conn.createStatement(); 

    //stmt.execute(sql);
    System.out.println("ABC");
    String sql="select *  from employee";       
    ResultSet rs=stmt.executeQuery(sql);
    //System.out.println(rs);
    //System.out.println("value inserted");
    while(rs.next()) 
         {

            System.out.println("id="+rs.getString(1));

            System.out.println();

        }
} 

最佳答案

NoSuchMethod 当你有 jar 冲突时出现。即当您使用 jar 构建项目并使用不同版本的 jar 运行应用程序时。

检查版本是否相同。

人们常犯的错误是,将 Jars 添加到项目中以在 Eclipse 中构建路径,然后再次在 Server Lib 中添加 jar。这有时容易受到 jar 冲突的影响。

给你的问题。你可以做两件事

  1. 从项目构建路径和服务器路径中删除 Cassandra Jar。并在这两个地方放置一个干净的同一个 jar 。

  2. 从构建路径和服务器路径中删除所有 jar。将所有 JAR 放在 WEB-INF/lib 文件夹中。现在您的应用程序具有很好的可移植性。

关于java - 我正在尝试以下代码,但它显示异常 :java. lang.NoSuchFieldError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13247619/

相关文章:

java - REST 调用以将大型结果集保存到可下载的 CSV

java - 来自 Java 的 SVN 分支信息

java - 如何统计线程抛出异常的数量?

asp.net - System.Web.Configuration.MachineKeySection.GetDecodedData中的 "Unable to validate data"异常表示什么

azure - 在 kubernetes 集群上部署 Cassandra

java - 回复 : jdbc driver for MySQL cannot be found from WEB-INF/lib directory

Javafx TableView在表格自动刷新时仍然选择最后选择的行

.NET 应用程序在一台 PC 上损坏,无法处理的异常

python - cassandra cqlenengine 映射键上的列索引

Cassandra cql : select N “most recent” rows in ascending order