rahul
rahul

Reputation: 67

java.lang.NoClassDefFoundError: Could not initialize class oracle.jdbc.driver.ClassRef

I have CentOS on both server and client in VM. I am trying to connect Java SE 8 with Oracle 11gR2. But it gives this error. I added ojdbc6.jar by "project properties-> libraries -> Add Jar/folder->/usr/java/jdk1.8.0_20/jre/lib/ext/ojdbc6.jar and ojdbc8.jar".

Code is:

import java.sql.*;
import oracle.sql.*;
import oracle.jdbc.*;
class OracleCon
{
    public static void main(String args[])
{
try
{
    Class.forName("oracle.jdbc.driver.OracleDriver");
   
    Connection con=DriverManager.getConnection("jdbc:oracle:thin:@serverora11gr2:1521:orcl","scott","tiger");

    Statement stmt=con.createStatement();

    ResultSet rs=stmt.executeQuery("select * from emp");
    
    while(rs.next())
    System.out.println(rs.getInt(1)+"  "+rs.getString(2)+"  "+rs.getString(3));

    con.close();

}
catch(Exception e)
{ System.out.println(e);}

}

}

Error is:

  Exception in thread "main" java.lang.NoClassDefFoundError: Could not initialize class oracle.jdbc.driver.ClassRef
at oracle.jdbc.driver.OracleDriver.<clinit>(OracleDriver.java:262)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:259)
at OracleCon.main(OracleCon.java:10)
/home/rahul/.cache/netbeans/8.2/executor-snippets/run.xml:53: Java       
 returned: 1
BUILD FAILED (total time: 0 seconds)

Upvotes: 0

Views: 10922

Answers (2)

Uday Singh
Uday Singh

Reputation: 175

you can try to re-order(put oracle dependency prior/much prior to sybase) sybase and ojdbc8 jar dependency in pom.xml

<dependency>
            <groupId>com.oracle</groupId>
            <artifactId>ojdbc8</artifactId>
            <version>12.2.0.1</version>
        </dependency>

<dependency>
            <groupId>com.sybase.jconnect</groupId>
            <artifactId>jconn4</artifactId>
            <version>7.07-27082</version>
        </dependency>

Upvotes: 0

Jean de Lavarene
Jean de Lavarene

Reputation: 3763

Try the latest JDBC driver which you can download from here: https://www.oracle.com/technetwork/database/application-development/jdbc/downloads/index.html. This error should go away.

Upvotes: 1

Related Questions