玻璃鱼罐头';t初始化org.apache.cassandra.cql.jdbc.CassandraDriver

玻璃鱼罐头';t初始化org.apache.cassandra.cql.jdbc.CassandraDriver,jdbc,glassfish,cassandra,Jdbc,Glassfish,Cassandra,我正在尝试使用Cassandra jdbc驱动程序在GlassFish中为Cassandra设置一个连接池。我已将驱动程序jar(以及它所依赖的所有jar)放在~glassfish domain/lib/ext文件夹中,但在尝试ping时出现以下错误: java.lang.NoClassDefFoundError: Could not initialize class org.apache.cassandra.cql.jdbc.CassandraDriver Could not initiali

我正在尝试使用Cassandra jdbc驱动程序在GlassFish中为Cassandra设置一个连接池。我已将驱动程序jar(以及它所依赖的所有jar)放在~glassfish domain/lib/ext文件夹中,但在尝试ping时出现以下错误:

java.lang.NoClassDefFoundError: Could not initialize class org.apache.cassandra.cql.jdbc.CassandraDriver Could not initialize class org.apache.cassandra.cql.jdbc.CassandraDriver
GlassFish似乎找到了类,但无法加载它。当满足所有依赖项时,一个可能的原因是静态块中存在异常。我检查了CassandraDriver的代码,它实际上有一个静态块:

    static
    {
        // Register the CassandraDriver with DriverManager
        try
        {
            CassandraDriver driverInst = new CassandraDriver();
            DriverManager.registerDriver(driverInst);
        }
        catch (SQLException e)
        {
            throw new RuntimeException(e.getMessage());
        }
    }

提前谢谢

似乎slf4j没有正确加载,因为它依赖于log4j.jar。所以我在类路径中添加了它之后,一切似乎都很好。以下是我的库中所有JAR的列表:

apache-cassandra-1.1.6.jar
apache-cassandra-clientutil-1.1.6.jar
apache-cassandra-thrift-1.1.6.jar
cassandra-jdbc-1.1.2.jar
commons-lang-2.4.jar
番石榴-r08.jar
libthrift-0.7.0.jar
log4j-1.2.14.jar
slf4j-api-1.5.8.jar
slf4j-log4j12-1.5.8.jar