Erro Exception in thread "main" java.lang.NoClassDefFoundError:Exemplo0101

6 respostas
V
Eu instalei o JDK 1.6.0_01 e configurei as variáveis do usuário da seguinte forma:

PATH : c:\jdk1.6.0_01

CLASSPATH: c:\jdk1.6.0_01\lib;.;

PATH: c:\jdk1.6.0_01\bin;%PATH%;

E o arquivo .java é o seguinte:

class Exemplo0101

{

public static void main (String args[])

{

System.out.println(Inicio do Aprendizado);

System.out.println(Ensino Didático da Linguagem Java);

}

}

Quando uso o comando: java Exemplo0101, aparece o seguinte erro:

Exception in thread main java.lang.NoClassDefFoundError:Exemplo0101

 instalei a versão 1.5, 1.6,  procurei fazer vários tipos de configuração do CLASSPATH, mas não consegui solução.

Obrigado a quem ajudar!
Vitor Fortkamp

6 Respostas

caiozanchetti

Amigo dá uma olhadinha nesse tuto aqui: http://www.guj.com.br/java.tutorial.artigo.108.1.guj

Só lembrando que o PATH deve apontar para %JAVA_HOME%\bin
e JAVA_HOME apontar para o diretorio raiz da instalacao da jdk.

Acho que isso irá resolver.

ramilani12

Primeiro vc deve compilar o seu arquivo java para gerar o .class que JVM precisa para rodar seu programa por isso erro descrito acima

javac TestClass.java // compilar 

java TestClass // executar o programa
LPJava

verifique em anexo… se vc fez dessa forma :smiley:
e depois dar uma lida nesse post… muito importante:http://www.guj.com.br/posts/list/50115.java

neohacker

Dica:
vvfortkamp coloque seu código dentro das tags [code]
vai ajudar bastante quem for ler...

vlw :wink:

Raposa_Mac

Cara e simples:

eu ja tive esse mesmo problema com o mesmo exemplo.

Primeiro vc deve saber que o CLASSPATH so e utilizado realmente quando vc acessa uma classe a partir de outra classe ou quando vc definir um endereço especifico para ela, ou seja, se vc definir sua CLASSPATH como D:\Desenvolvimento\Classes voce tera de colocar os .class nesse endereco a menos que vc diga antes que deve procurar o .class em qualquer lugar antes. Nesse exemplo eu criava uma pasta para cada capitulo e quando eu mandava rodar java nome ele dava essa mensagem porque minha CLASSPATH continha C:\diretorioinstalacao\lib, entao o java tentava rodar sempre um arquivo especifico neste endereco, é porisso que se vc por o arquivo lá funciona. Agora se vc por assim:

.;C:\DiretorioInstalacao\lib

voce esta dizendo que antes deve procurar as classes em qualquer lugar com o .; e vc poderia ate mesmo fazer o seguinte, criar um diretorio D:\Desenvolvimento\Classes\CapituloI(jogar .class aqui), II(jogar .class aqui), III(jogar .class aqui) …, e definir a CLASSPATH assim C:\DiretorioInstalacao\lib;D:\Desenvolvimento e funcionaria da mesma forma. Concluindo se vc simplesmente nao tivesse declara o seu CLASSPATH funcionaria pois seria feita uma procura geral. Muitos nao tem esse erro por usar um Editor como o Eclipse.

Um abraço

luis_serra

Eu Estou com o mesmo problema.
Meu Java está instalado em /usr/java/jdk1.5.0_02

fiz o seguinte:

JAVA_HOME=/usr/java/jdk1.5.0_02
export JAVA_HOME
PATH=$PATH:$JAVA_HOME/bin
export PATH
CLASSPATH=$JAVA_HOME/lib
export CLASSPATH
MANPATH=$MANPATH:$JAVA_HOME/man
export MANPATH

consigo compilar o arquivo Teste.java

javac Teste.java

Mais quando vo rodar o Teste.class da esse erro informado

java Teste.class Erro Exception in thread "main" java.lang.NoClassDefFoundError:Teste/class

O que estou fazendo errado?

Agora consegui faze-lo rodar da seguinte maneira

java -cp . Teste

mais tem alguma forma pra não ser dessa maneira??

Criado 16 de abril de 2007
Ultima resposta 22 de ago. de 2011
Respostas 6
Participantes 7