Exeception in thread "main" java.lang.NoClassDefFoundError : Jabberwock
Caused by: java.lang.ClassNotFoundException : Jabberwock
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 : Jabebrwock. Program will exit.
Esse erro, não sei porquê ocorre, mas está corretamente de acordo com a fonte
em uso, no caso meu livro, variaveis de ambiente corretamente configuradas,
ja que não faço uso nenhum de IDE, procurando primeiro dominar o uso dos
recursos da linguagem na unha, depois fazer cama de cinderela com esses
IDE’s, a classe esta de acordo com o nome do programa, esse erro é comum por
qual motivo ? Ja que tudo o que necessario para correto funcionamento esta
preenchido.
Se alguém tiver uma resposta branda, simples e resolutiva,s em criticar
nenhuma respota, ja que todas sõa bem-vindas, agradeço desde que começou a
ler este topico.
Grato
Pedro Alves.
Abaixo, o codigo do programa ao qual segue o erro :
public class Jabberwock {
String color;
String sex;
boolean hungry;
void feedJabberwock() {
if (hungry == true) {
System.out.println("Yum - a peasant.");
hungry = false;
} else
System.out.println("No, thanks - already ate.");
}
void showAttributes() {
System.out.println("This is a " + sex + " " + color + "jabberwock.");
if (hungry == true)
System.out.println("The jabberwock is hungry.");
else
System.out.println("The jabberwock is full.");
}
public static void main(String arguments[]) {
Jabberwock j = new Jabberwock();
j.color = "orange";
j.sex = "male";
j.hungry = true;
System.out.println("Calling showAttributes ...");
j.showAttributes();
System.out.println("RsRsRs");
System.out.println("Feeding the jabberwock ...");
j.feedJabberwock();
System.out.println("RsRsRs");
System.out.println("Calling showAttributes ...");
j.showAttributes();
System.out.println("RsRsRs");
System.out.println("Feeding the jabberwock ...");
j.feedJabberwock();
}
}
Caso ja exista um topico igual a esse, desculpem-me, estou sem tempo para que
pudesse procurar por tal.
O problema foi resolvido, foi so fazer o seguinte :
na variavel de ambiente ClassPath, tem que por a pasta que os seus programas Java estão salvos, por exemplo, ao inves de voce colocar no ClassPath a pasta
C:\Arquivos de programas\Java\jdk.1.6.9\lib, colocaria a pasta C:\Java, que e onde estão salvos os programas, porque ao contrario dos compiladores C/C++ que ja reconhecem onde estao as bibliotecas ou os projetos fonte em qualquer diretorio, o JVM precisa saber onde esta localizada as classes que voce quer compilar ou executar, caso contrario, levando a esse erro.