|
| applet virker kun på enkelte maskiner Fra : Hans Petersen |
Dato : 04-02-04 10:34 |
|
Er gået i gang med at lære lidt java, og har i den forbindelse lavet en
simpel applet.
Den starter to threads der tæller tal op, tegner tallet på canvas, sleeper
et sekund og rundt igen.
Som sagt ret banalt.
Jeg har compilet koden til to class filer med j2sdk 1.4.2.03 til windows.
Smidt dem på http server og kørt det fra to maskiner som kører windows xp
pro. Den ene bruger den java vm som fulgte med ovennævnte sdk. den anden
bruger det der oprindeligt fulgte med windowsinstallationen. På de maskiner
virker det og alt er ok. På to andre maskiner, den ene med win2k+standard
jvm og den anden med xp og standard jvm, virker det dog ikke, og kun et gråt
rektangle vises. 2k maskinen giver fejlen "load: class test not found".
mine to class filer (test.class,myThread.class) ligger i samme dir som
test.html hvori denne linie står
<applet code="test.class" width="160" height="160">
Er her nogen som kan komme med et gæt på hvad problemet er? Som sagt kører
denne applet glimrende på to ud af fire maskiner, hvor den ene af de to ikke
har nogen tilknytning til koden. De kører alle denne applet gennem absolut
url på fjern server.
| |
Hans Petersen (04-02-2004)
| Kommentar Fra : Hans Petersen |
Dato : 04-02-04 20:51 |
|
> Er her nogen som kan komme med et gæt på hvad problemet er? Som sagt kører
> denne applet glimrende på to ud af fire maskiner, hvor den ene af de to
ikke
> har nogen tilknytning til koden. De kører alle denne applet gennem absolut
> url på fjern server.
Ok, ikke mange bud. Svaret lader nu til at være java versionsproblemer. Min
maskine hvor appletten er udviklet kører med nyeste vm. Andre xp maskiner
har været blandede versioner og en 2k kunne bare ikke. Nu er jeg imidlertid
lidt overrasket over at der er problemer af den slags med noget så simpelt
som det beskrevne.
jeg includer med
import java.applet.*;
import java.awt.*;
anvender exception cathinc for sleep(..) og starter to threads. Ikke noget
nyt og kompliceret der, skulle jeg mene.
Kan man ikke compile til bytecode i en udgave som virker på andet end de
nyeste java-systemer?
| |
Lasse Westh-Nielsen (04-02-2004)
| Kommentar Fra : Lasse Westh-Nielsen |
Dato : 04-02-04 22:46 |
|
"Hans Petersen" <hp@mail.no> wrote in message
news:bvrif5$29ti$1@news.cybercity.dk...
> Kan man ikke compile til bytecode i en udgave som virker på andet end de
> nyeste java-systemer?
javac -target 1.1 Test.java
Target kan også være andre versioner end 1.1, men jeg tror 1.1 er mindste
fælles version for langt de fleste jvm'er.
Version 1.1 har ikke swing komponenter, og jeg ved ikke lige på stående fod
hvordan man får lov at bruge dem alligevel.
Husk også i dit applet tag at referere til "Test.class" og ikke "test.class"
Mvh Lasse
--
Lasse Westh-Nielsen
lasse@daimi.au.dk
| |
Hans Petersen (04-02-2004)
| Kommentar Fra : Hans Petersen |
Dato : 04-02-04 23:41 |
|
> javac -target 1.1 Test.java
>
> Target kan også være andre versioner end 1.1, men jeg tror 1.1 er mindste
> fælles version for langt de fleste jvm'er.
Det virker. Mange tak.
> Husk også i dit applet tag at referere til "Test.class" og ikke
"test.class"
Vel kun hvis klassen hedder Test og ikke test.
"....mine to class filer (test.class,myThread.class)...."
| |
Lasse Westh-Nielsen (05-02-2004)
| Kommentar Fra : Lasse Westh-Nielsen |
Dato : 05-02-04 02:43 |
|
"Hans Petersen" <hp@mail.no> wrote in message
news:bvrsdl$2nml$1@news.cybercity.dk...
> > Husk også i dit applet tag at referere til "Test.class" og ikke
> "test.class"
>
> Vel kun hvis klassen hedder Test og ikke test.
> "....mine to class filer (test.class,myThread.class)...."
Jojo, det er korrekt, men konventionen siger...
--
Lasse Westh-Nielsen
lasse@daimi.au.dk
| |
Thorbjørn Ravn Ander~ (05-02-2004)
| Kommentar Fra : Thorbjørn Ravn Ander~ |
Dato : 05-02-04 10:28 |
|
Hans Petersen wrote:
> Jeg har compilet koden til to class filer med j2sdk 1.4.2.03 til windows.
Du er formentlig blevet bidt af kodegenereringsskiftet i 1.4 (hvis du
bruger ren AWT). Enten oversæt med en Java 1.3 compiler, eller undersøg
hvordan du får javac til at benytte den gamle metode.
--
Thorbjoern Ravn Andersen "...plus...Tubular Bells!"
| |
|
|