Avatar billede mailliw Nybegynder
18. december 2000 - 16:42 Der er 12 kommentarer og
1 løsning

compilering fra dos og kawa

hej hvem kan hjælpe mig ??

Lige nu har jeg installeret jdk 1.2.1 og kawa4.01 og sammen virker de godt nok.

Jeg har bl.a. to bittesmå programmer som både kan compileres og køres i kawa, men mit problem er når jeg kommer ud i dos-promten, så kan jeg lige pludselig hverken compilere eller køre mine programmer.
Og jeg vil altså meget gerne kunne køre også fra Dos-Prompten

Jeg bruger windows 98


Programmet hedder HelloWorld .
I Dos-promten har jeg prøvet at skrive både
javac HelloWorld og javac HelloWorld.java Men begge kommandoer giver fejlmeddelelsen \"Forkert Kommando eller filnavn\"



Og det er da lidt underligt, at det ikke kan køre fra Dos når det fungerer i Kawa ???


Dernæst har jeg læst et sted på nettet, at man kan prøve følgende:
SET PATCH=C:\\jdk1.2.1.\\bin
og
SET CLASSPATCH=C:\\jdk1.2.1\\src.jar

Igen prøver jeg så at compilere fra Dos-Prompten, men uden held

Hvad tror du det skyldes ??
Kan det være fordi at jeg har konfigureret min kawa til jdk´en ??? således som der står man skal gøre i kawavejledningen ?


Altså følgende JDK Patchs:

Java Bin Directory :    c:\\jdk1.2.1\\bin
Java Lib directory        c:\\jdk1.2.1\\lib
Java Source Directory c:\\jdk1.2.1\\src
Java Documents        c:\\jdk1.2.1\\docs


Og følgende Kawa Paths

Packages Source directory    (\"er blank\")
Help Index File                    c:\\jdk1.2.1\\jsh\\jdk2.ipg
JDK Package Index            c:\\jdk1.2.1\\jsh\\jdk1.pkg 


Og følgende for Advanced Patchs:

Compiler                        c:\\jdk1.2.1\\bin\\javac.exe
Interpreter                      c:\\jdk1.2.1\\bin\\java.exe
AppletViewer                  c:\\jdk1.2.1\\bin\\appletviewer.exe
JDK Debug                    c:\\jdk1.2.1\\rtd121.jar 

I ved fanebladet general under options er Use System Classpatch desuden hakket af.
Avatar billede el_gnu Nybegynder
18. december 2000 - 16:52 #1
Prøv med

SET PATH=C:\\jdk1.2.1.\\bin
og
SET CLASSPATH=C:\\jdk1.2.1\\src.jar

i stedet for

SET PATCH=C:\\jdk1.2.1.\\bin
og
SET CLASSPATCH=C:\\jdk1.2.1\\src.jar

altså PATH i stedet for PATCH
Avatar billede daimidude Nybegynder
18. december 2000 - 21:05 #2
Ok, se her...
Først vil jeg anbefale dig at skaffe jdk1.3, men dig om det....
I autoexec.bat tilføjer du denne linie (lav backup-kopi af den gamle...!)

SET PATH=C:\\WINDOWS;C:\\WINDOWS\\COMMAND;C:\\jdk1.2.1\\BIN;\"%PATH%\"

Dette bevirker at du kan køre javakommandoerne i alle dine directories i DOS, altså javac OSV.

Det skulle virke... Håber at det vitterligt gør det...
Avatar billede daimidude Nybegynder
18. december 2000 - 21:12 #3
Og husk så at genstarte WinDoze\'98, ellers virker det ikke!
Avatar billede mailliw Nybegynder
19. december 2000 - 02:21 #4
Hej elgnu
ups - en fatal kopieringsfejl, men jeg får stadig en fejlmeddelelse.

Når jeg skriver javac HelloWorld.java får jeg
fejlmeddelelsen :
\"error: Can´t read : HelloWorld.java\"
Avatar billede mailliw Nybegynder
19. december 2000 - 02:27 #5
hej daimidude
1)Hvad står der egentlig i slutningen af din linie?
2)Står der virkelig \"96PATH96\" og hvad skal 96 gøre godt for ??
3)Det lyder som om du forestiller dig, at jeg skal have en permanent sti, men hvad hvis jeg netop ønsker at den skal være variabel ??
please help
mv Mailliw

Avatar billede mailliw Nybegynder
19. december 2000 - 02:32 #6
Hej damidude
Jeg er forresten interesseret i både den permanente og den variable løsning.
Hvis det skal være en permanent, hvordan skal jeg så åbne autoexec.bat og sætte din sætning ind?
Avatar billede daimidude Nybegynder
19. december 2000 - 09:50 #7
Hej mailliw 
1)Ja, jeg kan godt se problemet... Der STÅR % (procent) og IKKE 96.
2)Det bevirker at du kan køre alle java kommandoerne (f.eks javac, java, javadoc osv.) overalt i DOS, før virkede de kun i C:\\jdk1.2.1\\BIN (det kan du evt. prøve...). Dog skal din .java fil ligge i det directory som du udfører kommandoen i.
3) Jeg er ikke helt sikker på hvad du mener med en permanent sti, men denne her metode sørger for at DOS\' kommandopromt reelt(!) ved hvad du mener når du compiler...
Avatar billede daimidude Nybegynder
19. december 2000 - 09:56 #8
Forresten...
Angående Autoexec.bat kan du bare åbne den i Notesblok/Notepad og indsætte linien (ubrudt) på anden linie (linie 2), og gem. Husk ingen formatering i filen. Men husk en backup... Det kunne evt se sådan her ud: (jeg bruger jdk1.3, den stå på 3 linie)

rem - By Windows Setup - C:\\WINDOWS\\COMMAND\\MSCDEX /V /D:CD003 /M:10
SET PATH=C:\\WINDOWS;C:\\WINDOWS\\COMMAND;C:\\PERL\\BIN;\"%PATH%\"
SET PATH=C:\\WINDOWS;C:\\WINDOWS\\COMMAND;C:\\jdk1.3\\BIN;\"%PATH%\"
mode con codepage prepare=((850) C:\\WINDOWS\\COMMAND\\ega.cpi)
mode con codepage select=850
keyb dk,,C:\\WINDOWS\\COMMAND\\keyboard.sys
Avatar billede mailliw Nybegynder
19. december 2000 - 11:04 #9
Hej damidude
Jeg er på vej ud af døren og vender først tilbage sent i aften.
Jeg glæder mig til at prøve dine forslag.
Hvad mener du for øvrigt med: 
\"Dog skal din .java fil ligge i det directory som du udfører kommandoen i. \"?
Kan du ikke give et eller flere eksempler - jeg er sgu lidt ny i det her ???
mvh maiiliw.

Tror du forresten, at de ændringer du foreslår for nogen negativ virkning på min opsætning i kawa??
Avatar billede daimidude Nybegynder
19. december 2000 - 18:26 #10
Hej mailliw
Jeg mener, at hvis dit HelloWorld program ligger i eksempelvis:
C:\\minMappe\\minJavaKode\\
Så skal bruge kommandoen:
javac HelloWorld.java
IMENS du står i:
C:\\minMappe\\minJavaKode\\

Dette virker imidlertid kun hvis du har foretaget den ændring jeg har foreslået dig.
Dog virker det også (uden ændring) i:
C:\\jdk1.2.1.\\bin\\
hvis HelloWorld.java ligger deri.


2)
At/hvis du tilføjer linien:
SET PATH=C:\\WINDOWS;C:\\WINDOWS\\COMMAND;C:\\jdk1.2.1\\BIN;\"%PATH%\"

Påvirker på ingen måde Kawa eller nogen andre programmer, udover Command.com (hvilket jo er meningen :-] )
Avatar billede mailliw Nybegynder
20. december 2000 - 01:38 #11
Hej Damidude
Mit HelloWorld.java ligger i biblioteket c:\\dokumenter\\javaprogrammer

Jeg ved ikke helt , hvor min class-fil ligger, men bliver den ikke også først dannet efter compileringen ???
1) Jeg har nu gjort følgende i dos-promten:
SET PATH=C:\\WINDOWS;C:\\WINDOWS\\COMMAND;C:\\jdk1.2.1\\BIN;\"%PATH%\"

2) Dernæst skriver jeg i dosprompten følgende
c:\\dokumenter\\javaprogrammer

3)Så har jeg prøvet at compilere ved at skrive
javac HelloWorld.java
Her kom der ikke nogen fejlmeddelelser

Nu skal programmes så køres,men så kommer til gengæld den samme fejlmeddelelse - også selv om jeg har prøvet disse 3 forskellige muligheder:
java HelloWorld
java helloWorld.java
java HelloWorld.class

Fejlmeddelelsen lyder:
Exception in thread \"main\" java.lang.NoClassDefFoundError:HelloWorld

4)Endelig har jeg inden jeg skriver javac.HelloWorld.java og java HelloWorld.java
også prøvet at skrive set classpath=c:\\jdk1.2.1\\src.jar - også uden held

5) skal jeg overhovedet sætte classpathen??
Og hvorfor skulle min class-fil ligge i src.jar

6)Hvad mener du med at jeg skal genstarte Windows
Er det ikke kun hvis jeg lægger stigen permanent ind i autoexec.bat ??

Ja - jeg har stadig problemer.
Håber, at du fortsat gider at hjælpe mig
Godnat fra mailliw
Avatar billede daimidude Nybegynder
20. december 2000 - 02:26 #12
Hej.
Jo, såfremt programmet bliver compiled uden problemer, bliver .class filen lavet i samme directory. Hvis der ikke ligger en .class fil i dit direcory efter du har compiled, så er den IKKE blevet compiled!
1) Du skal IKKE skrive det i DOSprompten, men netop i Autoexec.bat. Dvs:
SET PATH=C:\\WINDOWS;C:\\WINDOWS\\COMMAND;C:\\jdk1.2.1\\BIN;\"%PATH%\"
2) Den fejlmeddelelse du får:
Exception in thread \"main\" java.lang.NoClassDefFoundError:HelloWorld
betyder NETOP at der IKKE ligger en classfil; HelloWorld.class i det directory!
3) Glem alt om src.jar! Den skal du ikke bruge overhovedet.
4) Jo, hvis du laver stien \"permanent\" i Autoexec.bat skal Windows genstartes før det træder i kræft. Dette mener jeg dog er en EKSTREMT GOD IDE.

Håber det lysner :-)
Avatar billede mailliw Nybegynder
21. december 2000 - 01:33 #13
Hej Damidude
Du skal have mange tak for hjælpen
Endelig lykkedes det.
det virker !!
Jeg satte sætningen :
SET PATH=C:\\WINDOWS;C:\\WINDOWS\\COMMAND;C:\\jdk1.2.1\\BIN ind i autoexec.bat som du sagde.
Som du kan se undlod jeg dog %path% til sidst, idet jeg stadig ikke helt kan se fidusen, men måske kan du give et eksempel.
Ellers må du have en god jul.
mvh Mailliw
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