ClassNotFoundException

11 respostas
E

Pessoal, tenho esse código abaixo no meu projeto, feito por outra pessoa. Acontece quando tento cadastrar algo no banco, o sistema dá esse erro proveniente desse trecho do código. Pesquisei na net e vi que o arquivo CacheJDBC.jar tem que está na variável de ambiente CLASSPATH. Caso contrário, o ClassLoader vai disparar uma ClassNotFoundException quando o programa for executado.O problema deve ser esse ? E se for,como resolver? quem puder ajudar,agradeço.

private PersistenceMechanismRDBMS(String url, String login, String senha, String classeDoDriver)

throws PersistenceMechanismException {

conexoesAlocadas = new HashMap();

this.classeDoDriver = classeDoDriver;

this.url = url;

this.login = login;

this.senha = senha;

indisponivel = false;

try {

Class.forName(classeDoDriver);

} catch (ClassNotFoundException e) {

throw new PersistenceMechanismException(EXC_CLASSE_NAO_ENCONTRADA);

11 Respostas

Z

Acho que você já apresentou a solução na própria pergunta: colocar o Jar no classpath. Você chegou a fazer isso?

E

Olha José, para ajustar, criei um BAT assim :
set CLASSPATH=c:\cachesys\java\CacheJDBC.jar;%CLASSPATH% e rodei no Dos, depois voltei para a aplicação e continua dando esse erro,alguém poderia ajudar???

_fs

Como você está rodando a aplicação?

E

Oi, como assim estou rodando?

Z

Edson, fazendo desse modo você estará anulando todo o classpath atual. Você deve adicionar o Jar no classpath.

Dá uma lida nesse artigo: http://www.guj.com.br/java.tutorial.artigo.108.1.guj

_fs

Se estiver rodando via linha de comando ou bat, pode fazer algo como:

java -cp c:\cachesys\java\CacheJDBC.jar MinhaClasse

ou se for um jar

java -cp c:\cachesys\java\CacheJDBC.jar -jar meuJar.jar

E

Lipe,
Traduzindo o que vc sugere para um iniciante, executo meu programa pelo Eclipse. No caso vou no autoexec e coloco no CLASSPATH essa linha do jar é? Se não for, como faço?
Valeu,
Edson

_fs

Aaaaah Eclipse.

Sem erro então:
clique com o botão direito no seu projeto > propriedades > java build path > add external jars
e adicione todas as bibliotecas que seu projeto depende.

E

Felipe,
Adicionei alguns Jars ao meu sistema, mas ao rodar, dá erro com as seguintes mensagens abaixo, vc poderia me ajudar?

Connecting to database

util.PersistenceMechanismException: Falha ao conectar

at util.PersistenceMechanismRDBMS.connect(PersistenceMechanismRDBMS.java:61)

at naturezas.RepositorioNaturezaMySql.(RepositorioNaturezaMySql.java:20)

at naturezas.RepositorioNaturezaMySql.getInstance(RepositorioNaturezaMySql.java:30)

at fachada.Banco.initCadastros(Banco.java:25)

at fachada.Banco.(Banco.java:20)

at telas.Tela.(TelaPrincipal.java:11)

at telas.TelaPrincipal.main(TelaPrincipal.java:109)
_fs

Cadê o código?

srsinistro

Bem, fora as opiniões e opções que a turma já te deu posso falar o seguinte:
Se vc criou um .Bat para incluir no classpath a variável, pode ser que não esteja funcionando principalmente se for no windows XP kra, o que vc tem que fazer para ter certeza é ir no AUTOEXEC.NT dentro da pasta <INSTALAÇÃO DO WINDOWS>\System32\ e incluir nesse autoexec.nt essa instrução ae, Set Classpath = %classpath%;<CAMINHO DO SEU .JAR> e caso na raís do seu C:\ não tenha o arquivo Autoexec.Bat, é o antigo hehehe, copie esse que esta no …\System32\Atoexec.Bat para o ráis do seu C:\ pois se não tiver os 2 nos 2 locais NÃO FUNCIONA mesmo vc editando pelo My Computer/Propriets tsc tsc tsc… enquanto não fiz isso kra não resolvi meus problemas com Classpath/Java_Home e outras variáveis de ambiente veio.

É isso ai, simples assim…

XD

Criado 7 de junho de 2005
Ultima resposta 9 de jun. de 2005
Respostas 11
Participantes 4