ClassNotFound com o Driver do MySQL

10 respostas
oskar

Pessoal

Criei um projeto de dados dentro de um package q eu mesmo criei, e fiz uso do driver do mysql para os beans de persistência, tudo isso no Eclipse o qual funciona normal…

O problema é quando gero o jar da aplicação e tento rodar, ele dispara uma exceção ‘ClassNotFound’ por nao encontrar o jar do drive do mysql.
Eu ja inclui de varias maneiras diferentes no maldito CLASSPATH… porem nada adiantou…

gostaria de uma ajuda, pois volta e meio tenho problemas com o classpath ainda.

[b]Meu CLASSPATH:
.;C:\jdk1.6.0_05\lib\mysql-connector-java-5.1.6-bin.jar;

tambem ja tentei CLASSPATH=.;C:\jdk1.6.0_05\lib;

JAVA_HOME e PATH também definidas.

No código:
Class.forName(“com.mysql.jdbc.Driver”);
para o jar: mysql-connector-java-5.1.6-bin.jar[/b]

10 Respostas

L

oskar,

vc ja tentou colocar o driver do mysql dentro do jar do seu projeto, em uma pasta lib?

oskar

olá

eu gerei o .jar pelo exportar do eclipse, abrindo o compactador tentei jogar numa pasta lib o jar… mas dai o java diz q corrompeu o jar

Fiz outro teste aqui, e definindo no CLASSPATH o nome do jar, ele até executa no prompt.

FUNCIONA: .;C:\jdk1.6.0_05\lib\mysql-connector-java-5.1.6-bin.jar;

NÃO Funciona: .;C:\jdk1.6.0_05\lib;

E mesmo com o classpath apontando direto pro arquivo, o jar não funciona… Estranho, o jar não verifica o classpath !?

L

pro export do eclipse gerar o seu jar com o driver dentro, vc precisa criar uma pasta lib e colocar o seu jar dentro…

oskar

Mesmo colocando o jar do driver numa pasta lib dentro do jar da aplicacao nao funcionou

O jar passou pra 600kb por conter o driver e ainda não rodou :?

Ou seja, jar do driver dentro do jar da aplicação e ainda no classpath… pq ao rodar o jar ele continua a gerar ClassNotFound ?

valeu…

E

Vc já tentou colocar no manifest a opção:

Class-Path: descriçãoDriverMySql.jar

e colocar o jar do MySQL na mesma pasta do seu jar exportado?

oskar

Tentei isso e de outras formas…

Criei o manifest e joguei o Jar do Mysql Driver na MESMA pasta:
Manifest-Version: 1.0
Main-Class: br.com.tarefas.TesteTarefas
Class-Path: mysql-connector-java-5.1.6-bin.jar

e testei usando tambem:
Class-Path: C:\jdk1.6.0_05\lib\mysql-connector-java-5.1.6-bin.jar

Nada funcionou. Tô tendo um trabalhão pra fazer algo q funciona rodar neste jar…

Ainda não entendo a razão pela qual ele não considera o driver no classpath

oskar

por favor pessoal… alguem me da uma ajuda pra resolver isso…

ja tentei varias formas de q o jar enxergue a biblioteca, sem sucesso

k1tsune

oskar:
por favor pessoal… alguem me da uma ajuda pra resolver isso…

ja tentei varias formas de q o jar enxergue a biblioteca, sem sucesso

Boa noite!

Estive aprendendo a mexer em JDBC, mas usando Postgre. Tive um problema semelhante, e resolvi simplesmente colocando try/catch quando fosse iniciar a conexão.

Ficaria mais ou menos assim:

try{
	Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException cnfe){
	System.err.println("Impossivel ler driver JDBC.");
	System.err.println("Detalhes: " + cnfe);
	System.exit(0);
}

Veja se funciona.

Abraço

E

Cara, para resolver o seu problema faz o seguinte.

Se você usa Eclipse:

http://fjep.sourceforge.net/

Baixa o arquivo Fat Jar clicando em Download from: project page

Instala o plugin no eclipse e veja em:

http://fjep.sourceforge.net/fjeptutorial.html

como gerar o jar, este plugin gera o jar com tudo certinho, com certeza vai funcionar.

Tava com este problema e usei este cara ai e agora ta perfeito.

LPJava

veja se o post a seguir ajuda: http://camilolopes.wordpress.com/2009/04/14/criando-conexao-java-mysql-com-eclipse/

flw!

Criado 15 de junho de 2008
Ultima resposta 27 de jun. de 2009
Respostas 10
Participantes 6