Avatar billede hejhejhej Nybegynder
06. februar 2003 - 19:00 Der er 20 kommentarer og
1 løsning

Hjælp til nybegynder!!

Hvordan kører man et java-program? Jeg har lagt JavaTM 2 Platform, Standard Edition ind på min win2k maskine.
Jeg skriver i kommandolinien "Java Hej" , men får flg meddelelse:
java.lang.NoclassDefFoundError: Hej

Programmet jeg prøver at køre ser sådan ud:

public class Hej
{
  public static void main (String[] args)
  {
      System.out.println ("A quote by Abraham Lincoln:");

      System.out.println ("Whatever you are, be a good one.");
  }
}
Avatar billede fiskesuppe Nybegynder
06. februar 2003 - 19:03 #1
Virker dette? (for så mangler du nemlig at gøre noget):

java -classpath . Hej
Avatar billede kwanstudios Nybegynder
06. februar 2003 - 19:05 #2
Avatar billede soreno Praktikant
06. februar 2003 - 19:07 #3
Du kompilerer med:
javac Hej.java

og eksekverer med:
java Hej

Husk at filen skal hedde det samme som klassen (samme case).
Din klasse hedder "Hej"
Derfor skal din fil hedde "Hej.java" (den må ikke hedde "hej.java").
Avatar billede simonvalter Praktikant
06. februar 2003 - 19:19 #4
på fbsd skulle jeg sætte classpath for at compile .. du skal sikkert oxo på windows
noget ala det her.
SET JAVA_HOME=C:\java\jdk1.3.1
SET CLASSPATH=C:\java\jdk1.3.1
Avatar billede arne_v Ekspert
06. februar 2003 - 19:21 #5
Hvis dit program ser ud som beskrevet og du har oversat det først, så
skal det virke.
Avatar billede arne_v Ekspert
06. februar 2003 - 19:22 #6
soreno>

Hvis class og fil navn ikke matcher, så får han compile fejl ikke run fejl.
Avatar billede arne_v Ekspert
06. februar 2003 - 19:24 #7
loadet>

SET JAVA_HOME=C:\java\jdk1.3.1 er ikke nødvendig i dette tilfælde
men en del java programmer kræver det, så det er en godide at sætte.

SET CLASSPATH=C:\java\jdk1.3.1 er ikke nødvendigt og efter min bedste
overbevisning noget man bør lade være med.
Avatar billede soreno Praktikant
06. februar 2003 - 19:27 #8
arne >> Jeg var blot på forkant med at spørger (sandsynligvis) endnu ikke har kompileret klassen.
Avatar billede simonvalter Praktikant
06. februar 2003 - 19:29 #9
ok .. arne_v .. tak for tippet =)
Avatar billede simonvalter Praktikant
06. februar 2003 - 19:45 #10
hehe jeg får det samme problem på windows når jeg compiler og kører direkte med javac og java ;) fbsd virker fint ..
Avatar billede arne_v Ekspert
06. februar 2003 - 19:55 #11
Mystisk !

C:\>set classpath=

C:\>set java_home=

C:\>javac Hej.java

C:\>java Hej
A quote by Abraham Lincoln:
Whatever you are, be a good one.
Avatar billede simonvalter Praktikant
06. februar 2003 - 20:13 #12
ja ok
run cmd.exe
C:\>javac Hej.java
'javac' is not recognized as an internal or external command,
operable program or batch file.

C:\>C:\JBuilder8\jdk1.4\bin\javac.exe Hej.java

C:\>C:\JBuilder8\jdk1.4\bin\java.exe Hej.class
Exception in thread "main" java.lang.NoClassDefFoundError: Hej/class

C:\>C:\JBuilder8\jdk1.4\bin\java.exe Hej
A quote by Abraham Lincoln:
Whatever you are, be a good one.
Avatar billede simonvalter Praktikant
06. februar 2003 - 20:15 #13
jeg har aldrig fået sat mig ind i hvad der sker inde bag ved jbuilder/intellij .. ;)
Avatar billede simonvalter Praktikant
06. februar 2003 - 20:17 #14
hvis man vil kunne skrive javac og java direkte i cmd.exe .. er der så et sted i windows hvor du kan sætte path som du kan i fbsd ..
feks ..
set path = ( /sbin /bin /usr/sbin /usr/bin /usr/local/sbin /usr/local/bin /usr/X11R6/bin $HOME/bin /usr/local/jdk1.3.1/bin)
Avatar billede arne_v Ekspert
06. februar 2003 - 20:20 #15
Ja. Den kan tilføjes til path.

Win95/98/ME : gode gamle AUTOEXEC.BAT

WinNT/2K/XP : control panel, system, advanced, environment variables
Avatar billede simonvalter Praktikant
06. februar 2003 - 20:21 #16
ok .. tak
Avatar billede arne_v Ekspert
06. februar 2003 - 20:23 #17
Et lille praktisk tip.

Hvis man ikke bruger java i kommando-vindue ret tit og ikke vil have
sin path cluttered, så laver man en lille C:\javadef.bat med:

@echo off
path="C:\jdk1.3.1\bin";%PATH%

Og når man så engang imellem vil command line compiler, så
åbner man bare sit vindue og skriver \javadef, så kan man
bruge java og javac.
Avatar billede hejhejhej Nybegynder
07. februar 2003 - 09:51 #18
Det virker nu. Jeg løste det ved at lave en environment variables. Så hvis arne_v lige vil skrive et svar
Avatar billede arne_v Ekspert
07. februar 2003 - 10:06 #19
svar
Avatar billede fiskesuppe Nybegynder
07. februar 2003 - 14:58 #20
Tag dog at være lidt aktiv lige efter du stiller et spørgsmål, så kunne du have fået svar efter 5-6 minutter ...
Avatar billede kwanstudios Nybegynder
07. februar 2003 - 20:26 #21
enig med fiskesuppe..
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester