28. august 2001 - 15:25Der er
11 kommentarer og 6 løsninger
start på javaprogrammering
Jeg har lidt problemer med at komme igang med noget java-programmering.Jeg har hentet og installeret jdk2-1.3.1 filen fra SUN-hjemmesiden, og når jeg tjecker versionen i DOS-prompten skriver den version 1.3.1 osv, så installationen skulle være iordene. Jeg kan også sagtens compile et program, men når jeg forsøger at køre det, kommer følgende fejlmeddelelse: exception in thread \"main\" java.lang.NoClass.DefFoundError: <programnavn> Jeg har tilføjet path\'en i autoexec.bat filen til java\'s \\bin\\ bibliotek hvor javac og de andre filer ligger jeg står lidt på bar bund. Håber der er en med mere erfaring der kan hjælpe min. På forhånd tak.Vh Søren
Java skal vide hvor dine filer ligger. Den kender automatisk standard klasserne, men ikke dine nye. Du fortæller hvor de ligger ved angivelse af en såkalds classpath. Når du kører dit program skal du skrive java -classpath .:$CLASSPATH MInClass så kigger java lokalt hvor du står (jeg antager din MinClass.class ligger hvor du står). Du kan sætte classpath variablen CLASSPATH til at kende bestemte direktorier hvor du typisk vil lægge dine .class filer.
Som mickni33 indirekte siger, så ér der forskel på store og små bogstaver i .java og .class filer, selv om der ikke er i Windows/DOS filsystemet. Mærkeligt men rigtigt.
Har du derfor public class MinClass { ... } skal du kalde med javac MinClass.java og java MinClass
Havde det samme prob. i går. Det kommer ved at din .class og .java fil ikke hedder det samme. Når du programmere en class opretter den en .class fil og når du compilere bliver der skabt en .java fil. disse 2 filer skal have samme navn. F.eks. test.java og test.class. Husk at java er case sensitive så du skal huske store og små bogstaver.
klasse-navnet er forskelligt fra fil-navnet husk at fil og klasse skal hedde det samme Det kommer ved at din .class og .java fil ikke hedder det samme.
Tjae... det ligner for mig at se nu det samme.
2+2 er 4. Det kan da sagtens vises på andre måder (2*x+2*x = 4*x) men burde vel i bund og grund ikke være nødvendig.
Som mickni33 indirekte siger, så ér der forskel på store og små bogstaver i .java og .class filer Husk at java er case sensitive så du skal huske store og små bogstaver
Nok engang en flot gentagelse..
Jaja, amerikanske forfattere har det også med at gentage sig selv, men derfor behøver vi vel ikke også gøre det?
Fortæl mig lige hvor det her står i ovenstående besvarelser oki?
>klasse-navnet er forskelligt fra fil-navnet husk at fil og klasse skal hedde det samme Det kommer ved at din .class og .java fil ikke hedder det samme.<
Klassenavnet kan ikke være forskellig fra fil-navnet, for så ville javac have brokket sig.
Det kan iøvrigt også være fordi der er installeret flere versioner af Java på den samme maskine, og en classpath peger forkert. Jeg har selv - øv øv - fået samme problem efter at have installeret VisualAge. Og jeg har ikke fået det fixet endnu :(
klassenavn: class MinKlasse { .. } filnavn: MyClass.java
Synes godt om
Ny brugerNybegynder
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.