Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   Java (http://www.forosdelweb.com/f45/)
-   -   Crear un Jar con Eclipse... (http://www.forosdelweb.com/f45/crear-jar-con-eclipse-597323/)

Bellenger 17/06/2008 07:48

Crear un Jar con Eclipse...
 
Hola a todos, espero que esten bien :si::si:,
Bueno mi problemilla es que estoy generando un JAR con eclipse, lo genera sin nungun problema, pero cuando lo ejecuto, no se conecta a a la base de datos. Decir que en la exportacion seleccione el driver. Cuando lo ejecuto desde el eclipse todo funciona sin problemas, alguien podria ayudarme... :'(
Gracias de antemano...

djagu_26 17/06/2008 10:31

Respuesta: Crear un Jar con Eclipse...
 
hola cuando haces el export te aseguras q tambien exporte el jar de mysql-connector?
saludos

Bellenger 17/06/2008 10:48

Respuesta: Crear un Jar con Eclipse...
 
Claro, en las propiedades de proyecto, al principio era por que no estaba seleccionado, pero luego de que lo seleccione seguia igual...:neurotico

djagu_26 17/06/2008 10:57

Respuesta: Crear un Jar con Eclipse...
 
pero te da algun error? sino correlo en consola java -jar programa.jar y ahi vas a ver si te da algun error que nos guie un poco mas
saludos

pd: te agregue al msn por si quieres ayuda mas rapido

Bellenger 18/06/2008 10:51

Respuesta: Crear un Jar con Eclipse...
 
Hola, gracias por responder; como dije la compilacion se realiza sin ningun problemas y no vota error cuando termina de compilar o cuando lo ejecuto. Cuando utilizo una opcion del programa por ejemplo registrar empleado, entonces internamente en el boton esta la conexcion, pues bien, salta del try al catch, lo que entiendo es que no registra adecuadamente el driver de mysql, cuando lo compilo, por lo cual no conectaa ala bd: ejemplo...
Código PHP:

try{
  Class.
forName("com.mysql.jdbc.Driver").newInstance();
  
String url="jdbc:mysql://localhost:3306/bd";
  
Connection cn=DriverManager.getConnection(url,"root","root");
  ...
}catch(
Exception ex){
  
System.out.println("HORRORRRR");


Como esta en el codigo, la conexcion se realiza correctamente cuando lo ejecuto desde el mismo eclipse, pero cuando lo compilo no se conecta, ojo que agrego la referencia del conector al momento de compilar. He ahi el problemilla, que no entiendo... :'(

djagu_26 18/06/2008 11:09

Respuesta: Crear un Jar con Eclipse...
 
hola mirando tu codigo no le veo error solo que no me queda muy claro si es necesario el newInstance mira yo tengo esta clase para realizar conexiones con mysql pruebala a ver que te resulta y vee que error te muestra ejecutandolo como te dije antes para que veas claramente que tipo de error es

Código:

import java.sql.Connection;
import java.sql.DriverManager;

/**
 *
 * @author djagu_26
 */
public class ConexionBD {
    private Connection con;
    private static ConexionBD instancia=null;
    /** Creates a new instance of ConexionBD */
    private ConexionBD() {
    }
    /**
    *Retorna la instancia de la clase.
    *
    *
    *@return ConexionBD
    */
   
    public static ConexionBD getInstancia(){
        if (instancia==null)
            instancia = new ConexionBD();
        return instancia;
    }
    /**
    *Permite conectarnos a la base de datos
    *
    *
    *@param usr String
    *
    *
    *@param pwd String
    *
    *
    *@param host String
    *
    *
    *@param base String
    *
    *
    *@return Boolean
    */
    public boolean conectar(String usr, String pwd, String host,String base){
        boolean valor=false;
       
        try{
            Class.forName("com.mysql.jdbc.Driver");
            con = DriverManager.getConnection("jdbc:mysql://" + host + "/" + base,usr, pwd);
           
            valor=true;
           
        } catch(Exception ex){
            ex.printStackTrace();
            valor=false;
        }
        return valor;
    }
    /**
    *Retorna la conexion.
    *
    *
    *@return Connection
    */
    public Connection getConexion(){
        return con;
    }
   
}

con esta clase solo necesitas conectarte una sola vez a la bd ingresando usuario y password(ventana login) y luego pides la conexion de cualquier parte del programa asi

ConexionBD.getInstancia().conectar("root","root"," localhost","base");//esto una sola vez

y despues llamas la conexion asi ConexionBD.getInstancia.getConexion();

esta clase usa un patron singleton

saludos

Bellenger 18/06/2008 14:46

Respuesta: Crear un Jar con Eclipse...
 
Entiendo lo que me dices, lo del patron y el resto, el detalle es que solo lo puse de ejemplo jeje, ya que si trabajo con patrones. El problema es... Por que cuando lo compilo no se conecta a mysql, y por que cuando lo ejecuto de eclipse si se conecta....:'(

djagu_26 18/06/2008 15:14

Respuesta: Crear un Jar con Eclipse...
 
A ver vamos de nuevo.
preguntas:

¿Como ejecutas el jar desde afuera?
1. Doble click?
2. o por el comando java -jar programa.jar?

¿El servicio de mysql esta levantado?

¿las librerias estan correctamente importadas en el jar? o tienes el jar y un directorio lib donde pones todas las librerias?

En este codigo imprimie la excepcion en el catch para verificar si te da algun error que no estas atrapando.

Código:

try{
  Class.forName("com.mysql.jdbc.Driver").newInstance();
  String url="jdbc:mysql://localhost:3306/bd";
  Connection cn=DriverManager.getConnection(url,"root","root");
  ...
}catch(Exception ex){
  System.out.println("HORRORRRR");
  ex.printStackTrace();
}

¿una parte que no entendi es como haces referencia al conector cuando lo compilas?

empieza por responder esto a ver si de una vez podemos solucionarlo
saludos

Bellenger 18/06/2008 21:55

Respuesta: Crear un Jar con Eclipse...
 
rptas...
1. Ejecuto con doble click.... lo muestra pero no conecta...
2. mysql si esta levantado...
3. oviamente, sino no hubiera funcionado al ejecutarlo directamente desde eclipse...
4. claro que hago trace... el codigo lo escribi directamente como ejemplo nada mas...
5. la referencia del driver la hago desde las propiedades del proyecto...

Gracias por el interes...
Saludos...:si:

djagu_26 19/06/2008 06:36

Respuesta: Crear un Jar con Eclipse...
 
es raro, lo peor es que no te tira ninguna excepcion o no la estas capturando, prueba ejecutar el jar java -jar programa.jar ya que ahi te mostrara la consola de windows y en caso de saltar una excepcion te la mostrara ahi,
entiendes como ejecutarlo desde consola? sino agregame al msn [email protected] y capaz me entiendes mejor

o pon la parte del codigo en la cual se tiene que conectar por primera vez

saludos

GreenEyed 19/06/2008 10:44

Respuesta: Crear un Jar con Eclipse...
 
¿Tienes declarado el classpath correctamente en el MANIFEST.MF del fichero .jar? Los .jar usan su propio classpath y si no lo pones bien, no te encontrará las clases de las librerías.

S!

ivlecamo 06/07/2008 20:07

Respuesta: Crear un Jar con Eclipse...
 
Hola, mira yo estoy utilizando tu codigo para conectarme de eclipse con mysql, pero ni si quiere me despliega algo... quise hacer seguimiento con impresiones en la consola y nada... mira:
y el error que me bota es:
=> Cargando el driver ... :
Ahora es la excepcion para el Connection
SQLException: com.mysql.jdbc.Driver


Aqui esta el codigo:
try {

System.out.println( "=> Cargando el driver ... :" );
String arg0="com.mysql.jdbc.Driver";

Class.forName(arg0).newInstance();
System.out.println( "OK" );

String url = "jdbc:mysql://localhost:3306/test";
System.out.println( "=> Conectando ... :" );

Connection conexion = DriverManager.getConnection (url,"root", "");

System.out.println("URL: " + url);
System.out.println("Connection: " + conexion);

if(conexion != null){
System.out.println( "OK--> nos conectamos" );
}
}
catch( Exception ex ) {

System.out.println("Ahora es la excepcion para el Connection");
System.out.println("SQLException: " + ex.getMessage());

}


La zona horaria es GMT -6. Ahora son las 22:56.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.