Erro Java.lang.NoClassDefFoundError

13 respostas
D

Sei da existência de vários tópicos sobre este erro. Mas não encontrei a solução para o meu problema.

O caminho está correto, o path do sistema também. Estou usando a última versão do Java, a 1.6.0_17.
Não sei o porque de todos os programas que executo apresentam a mensagem Java.lang.NoClassDefFoundError, todos .java são compilados corretamente. Em qualquer diretorio no qual eu executo qualquer arquivo já compilado e que funcionavam perfeitamente também apresentam este erro.

Lá esta Java_Home, coloquei o caminho no path, todo como manda o figurino.

O Java está em java\sdk\jdk\jre, não consigo descobrir a causa.

13 Respostas

peczenyj

Beleza, mas sem ver detalhes da exception não tem como dizer algo diferente de ‘Verifique o ClassPath’. Mas pode ser algo diferente: talvez versão, talvez conflito, talvez reflection ‘do mal’.

Em algumas situações pode acontecer um erro de deploy e faltar algum jar ou o mesmo não ser carregado direito. Hoje subi uma aplicação para 6 maquinas diferentes que utilizam weblogic (madrugada sinistra) e só uma delas apresento um erro bizarro desses. Reiniciando “na força” tudo voltou ao normal.

Adelar

deathcon4, você está alguma biblioteca “externa” (driver JDBC por exemplo) e passou seu endereço? Manda o Exception que fica mais fácil descobrir o que aconteceu.
té+

D
O erro está abaixo:

C:\Paulo\Java>java Addition

Exception in thread main java.lang.NoClassDefFoundError: Addition

Caused by: java.lang.ClassNotFoundException: Addition

at java.net.URLClassLoader$1.run(Unknown Source)

at java.security.AccessController.doPrivileged(Native Method)

at java.net.URLClassLoader.findClass(Unknown Source)

at java.lang.ClassLoader.loadClass(Unknown Source)

at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)

at java.lang.ClassLoader.loadClass(Unknown Source)

at java.lang.ClassLoader.loadClassInternal(Unknown Source)

Could not find the main class: Addition.  Program will exit.
D

Esqueci, não usei BD nem outro recurso especial.
O novo java até tem um item para colocar o caminho no path.

A

Se tiver usando o netbeans, adiciona o jar pela ide (pasta biblioteca/add jar). o ant do nb se encarrega do “resto”
No eclipse use o build path/configure build path/add jar

Se nada mais der certo, jogue as bibliotecas dentro de java/jre/lib. é tosco mas normalmente funciona =)

att

zoren

Você está usando alguma IDE??

quando eu tinha configurado as minhas variaveis de ambiente erradas, dava o mesmo erro qdo eu tentava fazer pela linha de comando

edit:

quem que está na pasta java\sdk\jdk\jre??

geralmente na variavel path a gente coloca pra pasta bin

coloca suas variaveis de ambiente aqui

renamed

cara, mas a instalação do java hj em dia seta as variaveis de ambiente sozinho… existe essa opção na instalação… eu lembro bem… so nao lembro se por default ela vem marcada ou desmarcada…

M

O path (ao menos do java) está correto, pois o DOS não lançou um “Comando não encontrado”. Quais os passos que você seguiu?

Compilou o programa com ‘javac NomeDoArquivo.java’?
Depois executou-o com ‘java NomeDoArquivo’?

D

Compilei como javac nomeDoArquivo.java
Meu classpath está assim: C:\java\jdk\jre\bin;C:\java\jdk\jre\lib
Meu path: C:\java\jdk\jre\bin;C:\java\jdk\jre\lib;C:\java\jdk\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem
Uso o Eclipse: uso a ide 3.5 sem recursos adicionais.
Java_home:C:\java\jdk\jre\bin
Também coloquei Java_lib:c:\java\jdk\jre\lib
O caminho normal anterior do java era maior, como esse novo java, assim coloquei como acima.

zoren

A variavel path deveria estar apontando para a pasta bin dentro da pasta do jdk

e a classpath para a pasta src

D

Removi tudo, e peguei a versão jdk, por engano tinha pego a versão Entreprise, que pede para colocar senha e no final pergunta se quer iniciar o servidor. Mesmo assim, como disse, não era para ocorrer este erro. Com a versão jdk o problema foi resolvido. O compilador das versões não são o mesmo? A versão Enterprise também vem com o jre, igual ao jdk, não entendi nada.

LPJava

instale o java dessa forma e pronto. Creio que vai resolver seu problema.

D

Foi o que fiz. Instalei desta forma. Resolvido.
Pode fechar o tópico

Criado 22 de dezembro de 2009
Ultima resposta 24 de dez. de 2009
Respostas 13
Participantes 8