NoClassDefFoundError

Status
Niet open voor verdere reacties.

niekfct

Terugkerende gebruiker
Lid geworden
19 jul 2006
Berichten
1.563
Hoi

ik begin nu met een eerste applicatie, "HelloJava". Hierbij gebruik ik het boek "Learning Java 3rd Edition".
Dit begint met een command-line applicatie met de volgende code:

Code:
import javax.swing.*;

public class HelloJava {
  public static void main( String[] args ) {
    JFrame frame = new JFrame( "Hello, Java!" );
    JLabel label = new JLabel("Hello, Java!", JLabel.CENTER );
    frame.getContentPane().add(label);
    frame.setSize( 300, 300 );
    frame.setVisible( true );
  }
}

Deze heb ik voor het gemak even op "C:\HelloJava.java" opgeslagen. Als ik in CMD "javac c:\helloworld.java" intyp, creeert hij het .class bestand. Als ik dan "java helloworld" of "java c:\helloworld" intik, krijg ik de error:

Code:
exception in thread "main" java.lang.NoClassDefFoundError: c:\hellojava


Ik heb de op de CD-Rom meegeleverde "jdk-1_5_0_02-windows-i586-p.exe" uitgevoerd, en geinstalleerd in "C:\Program Files\Java\jdk1.5.0_02".
Verder had ik eerst het probleem dat "javac" niet kon worden herkend als batch-bestand (of iets dergelijks), dus heb ik bij "omgevingsvariabelen" al "JAVA_HOME" en "PATH" toegewezen.
 
Maak er eens dit van:

Code:
import javax.swing.*;

public class HelloJava {
  public static void main( [COLOR="Red"]String args[][/COLOR] ) {
    JFrame frame = new JFrame( "Hello, Java!" );
    JLabel label = new JLabel("Hello, Java!", JLabel.CENTER );
    frame.getContentPane().add(label);
    frame.setSize( 300, 300 );
    frame.setVisible( true );
  }
}
 
daarmee doet hij het nog steeds niet.. Wat me opvalt, is als ik

"java fasdlkjhaskdf" doe, hij dezelfde fout geeft...
 
Aaah, ik zie het al...
Jij probeert de sourcefiles te runnen...
de .java files.

Je zal .jar -files moeten runnen.
Daarvoor zal je eerst je programma moeten "Builden"
 
nee eigenlijk niet ;) (denk ik)

in het boek staat het volgende:

je maakt in kladblok de code, die sla je op als ***.java
met javac compileer je het java bestand naar class
met java *** voer je het programma uit.

Maar ondertussen heb ik het gevonden:

http://www.stickyutrecht.nl/forum/viewtopic.php?t=66

daar staat dat je "java -classpath . HelloJava" kunt gebruiken en dat werkt. probleem opgelost! :thumb:
 
aaah oki...
Ik maak eigenlijk nooit java programma's in notepad....
gebruik netbeans daarvoor :)
 
ja hier doen ze dat volgens mij als inleiding ofzo
 
ok... blijkt dat ik de hele tijd in het verkeerde pad zat te knooien :o
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan