Pregunta

Yo uso NetBeans 6.5.

Cuando intento ejecutar el siguiente código:

package com.afrikbrain.numeroteur16;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.logging.Level;
import java.util.logging.Logger;

/**
 *
 * @author 
*/

public class NumeroteurTest {

  public NumeroteurTest() {

  }

  public void doIt() throws ClassNotFoundException{
    try {

      Class.forName("oracle.jdbc.OracleDriver");
      Connection connection = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:XE","user","pwd");
      String newNUMERO = new Numeroteur16("MATCLI", connection).numeroter();
      System.out.println("NUMERO GENERE : "+newNUMERO.toString());
    }
    catch (SQLException ex) {
            Logger.getLogger(NumeroteurTest.class.getName()).log(Level.SEVERE, null, ex);
            ex.printStackTrace();
    }
    catch (NumException ex) {
      System.out.println(ex.getMessage());
      ex.printStackTrace();
    }

  }

  public static void main(String[] args){
        try {
            new NumeroteurTest().doIt();
        } catch (ClassNotFoundException ex) {
            Logger.getLogger(NumeroteurTest.class.getName()).log(Level.SEVERE, null, ex);
            System.out.println("Driver not found.");
        }
  }
}

Entiendo este error:

java.lang.ClassNotFoundException: oracle.jdbc.OracleDriver
        at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:169)
        at com.afrikbrain.numeroteur16.NumeroteurTest.doIt(NumeroteurTest.java:27)
        at com.afrikbrain.numeroteur16.NumeroteurTest.main(NumeroteurTest.java:45)
Driver not found.

¿Cómo resuelvo este problema?

¿Fue útil?

Solución

El problema: Java no puede encontrar la clase de controlador JDBC.
Solución: Agregue el controlador Oracle JDBC a su classpath.
Puedes conseguirlo en http://www.oracle.com/technology/software/tech/java/sqlj_jdbc/index.html

Comienza Java con java -classpath ojdbc14.jar ... Para incluir el frasco descargado en su classpath.

Otros consejos

Agregar ojdbc6.jar a las bibliotecas del proyecto. Primero, cree una nueva biblioteca (NetBeans):

  • NetBeans -> Herramientas -> Bibliotecas -> nueva biblioteca (Use un nombre descriptivo, por ejemplo, OracleJDBC6.)
  • Hacer clic OK, después Agregar jar/carpeta.
  • Escribe %ORACLE_HOME%\jdbc\lib\ojdbc6.jar, luego confirme. En mi computadora, ORACLE_HOME=c:\app\admin\product\11.2.0\dbhome_1.

Finalmente, agregue la biblioteca al proyecto: haga clic derecho en Bibliotecas, , Seleccione Agregar biblioteca y seleccione la biblioteca agregada previamente.

Asegúrese de que el controlador de Oracle esté en la clase. El delgado controlador está en OJDBC14.Jar.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top