Java.lang.NoClassDefFoundError mesmo com build path correto

3 respostas
nunomazer

Olá

estou tentando testar um projeto no Eclipse, mas quando vou rodar a classe de teste o erro abaixo é retornado

Exception in thread "main" java.lang.NoClassDefFoundError: oracle/jdbc/pool/OracleConnectionCacheImpl at SQLDBConnection.connect(SQLDBConnection.java:186) at SQLDBConnection.connect(SQLDBConnection.java:92) at SQLDBConnection.<init>(SQLDBConnection.java:64) at EntidadeProtocolo.<clinit>(EntidadeProtocolo.java:17) at Teste.main(Teste.java:70)

acontece que já testei todas as configurações possíveis para o classpath;
já apontei as bibliotecas no build path corretamente, retirei, coloquei em diretórios diferentes, e simplesmente não roda.
Durante a programação o eclipse não dá erro algum informando que não encontra a classe.

se alguém puder ajudar, eu agradeço

3 Respostas

peczenyj

Ok.

Pesquise no seu classpath todos os arquivos jar.

Um jar é um zip com uma estrutura “especial”. Vc pode abrir no winzip ou fazer um jar -tvf

ex:

$ jar -tvf ./Projetos/XXX/dependencias/jmock-cglib-1.2.0.jar 0 Tue Apr 10 16:37:12 BRT 2007 META-INF/ 106 Tue Apr 10 16:37:10 BRT 2007 META-INF/MANIFEST.MF 1459 Sun Nov 30 12:41:16 BRST 2003 LICENSE.txt 0 Tue Apr 10 16:37:08 BRT 2007 org/ 0 Tue Apr 10 16:37:10 BRT 2007 org/jmock/ 0 Tue Apr 10 16:37:10 BRT 2007 org/jmock/cglib/ 883 Tue Apr 10 16:37:10 BRT 2007 org/jmock/cglib/CGLIBCoreMock$1.class 3566 Tue Apr 10 16:37:10 BRT 2007 org/jmock/cglib/CGLIBCoreMock.class 1841 Tue Apr 10 16:37:10 BRT 2007 org/jmock/cglib/MockObjectTestCase.class 2943 Tue Apr 10 09:27:02 BRT 2007 org/jmock/cglib/CGLIBCoreMock.java 1392 Fri Apr 06 14:52:10 BRT 2007 org/jmock/cglib/MockObjectTestCase.java

Nesse caso vc pode pesquisar em todos pela string que vc quer. Nesse caso um grep resolve. Se vc tiver acesso a um bash (linux ou mesmo via cygwin) vc pode usar esse script:

Mas devo alertar: se vc não encontrar essa classe então vc precisa baixar o jar correto de algum lugar.

nunomazer

Já havia procurado dentro do jar e encontro a classe …

Vou continuar procurando para tentar descobrir.

Obrigado pela resposta !!!

peczenyj

Acho q ta faltando um classes12.jar ai…

http://www.guj.com.br/posts/list/21844.java

Criado 26 de fevereiro de 2008
Ultima resposta 26 de fev. de 2008
Respostas 3
Participantes 2