sslug-teknik team mailing list archive
-
sslug-teknik team
-
Mailing list archive
-
Message #43125
Re: RE: Java-compiler til Linux?
"Morten Egelund Rasmussen" <sslug-teknik@xxxxxxxxxxxxxx> wrote:
> Jesper skrev:
>
[Gode argumenter for Jikes fjernet ;o) ]
>
> Engang imellem er Open Source / 3rd party development nu
> ikke så ringe
> endda. Man skulle ellers tro at SUN ville forsvare
> sprogspecifikationen
> til punkt og prikke, da det var dem der opfandt Java. Dog
> har de måske
> haft brug for at distancere sig fra Micro$ofts modificerede
> version af
> Java... (?)
En anden grund, som jeg glemte at sige er, at fejlmeddelelserne fra Jikes er langt mere deskriptive end Javac og ganske "intelligente". Således vil Jikes, hvis du eksempelvis laver et metodekald getMitName() (hvor det burde have været getMyName() ) skrive at metoden getMitName() ikke eksisterer, men at der findes en metode getMyName() som signaturmæssigt og navnemæssigt kunne være den du mente ... ganske smart!
>
> Okay. Skal man så anvende Jikes eller Blackdown? Så vidt jeg
> kan se på
> det hele, så er det nærmest hip som hap.... Jikes lyder dog
> som den
> bedste compiler. Faktisk så forsøgte jeg at installere Jikes
> ver. 1.15
> tidligere i dag på min Mandrake 7.2, men uden held.... Der
> kom en eller
> anden underlig "make"-fejl om (bl.a.) iostreams.h der
> manglede...
> Herudover er der lige problemet med, at man skal skaffe de
> rigtige
> klassebiblioteker. (Hvor får jeg dem fra?)
Du misforstår noget. Jikes er KUN en java kompiler, som kommer helt uden klassebiblioteker. (Du kan hente en binær version af Jikes fra www.alphaworks.ibm.com). Blackdown er et fuldt Java Development Kit (det vil sige en compiler og et klassebibliotek). Så summa summarum har du to valg; 1) hvilket klassebibliotek skal du bruge 2) og hvilken kompiler.
Ad 1) Her er der såvidt jeg ved Sun's eget JDK, IBM's JDK og Blackdown. Som skrevet tidligere på listen er SUN's JDK vistnok bygget på Blackdown, og hvad status på sidstnævnte er nu ved jeg ikke. Nu har du det lidt specielle krav at du skal bruge JDK 1.0.2, og jeg ved ikke om SUN og IBM har et JDK til Linux i denne version ... se herunder...
Ad 2) Du kan kombinere Jikes med SUN's, IBM's og Blackdown's klassebiblioteker - Jikes er helt uafhængigt er de respektive klassebiblioteker.
> Jeg vil bare godt være 100% sikker på at jeg ikke foretager
> mig noget
> dumt ved at vælge Blackdown fremfor Jikes. (Manglende
> kompatibilitetsproblemer, bugs, etc.etc...?)
Det får du næsten med garanti ikke .... Du kan jo også gøre det at du vælger SUN's JDK 1.3 og blot undlader at bruge klasser/metoder senere end 1.0.2. Klassebibliotekerne er såvidt jeg ved 100% bagudkompatible. Det vil altså sige, at du sagtens kan skrive et JDK 1.0.2 kompatibelt program i JDK 1.3 - det vil jeg faktisk helt klart anbefale dig at gøre! Download JDK 1.3 og skriv 1.0.2 kode. Den binære kode, som kompileren generere skulle såvidt jeg ved ikke have ændret sig imellemtiden .... Jeg vil i denne forbindelse anbefale dig at downloade JavaDoc til det JDK, som du vælger (1.3) ... I JavaDoc står der for alle klasser angivet i hvilken version af JDK de var tilføjet. Således kan du fra JavaDoc se om der er klasser/metoder du ikke bør anvende, hvis du vil være 1.0.2 kompatibel ...
Mange hilsner
Jesper