Dnes se vrátíme zpět k úvodu - od začátku seriálu se totiž v Javě leccos změnilo
(k lepšímu). Chtěl bych také připomenou některé časté problémy při a po instalaci
Javy, a jejich řešení.
5.5.2005 07:00 | Lukáš Jelínek | přečteno 38230×
Když tento seriál začínal (tehdy ještě pod taktovkou Petra Hatiny), existovala pod kódovým názvem Tiger beta verze něčeho, co sice mělo úplně nové označení, ale ve skutečnosti to bylo pokračování toho předchozího. Ano, řeč je o Javě 5.0, která přináší do jazyka i do knihoven řadu nových věcí. Ale nepředbíhejme, vezmeme to postupně...
Pravděpodobně již každý ví, že k běhu programů napsaných v Javě je (s výjimkou případů, kdy se javovské programy zkompilují do nativního strojového kódu) bezpodmínečně nutné provozní (též "běhové", "spouštěcí" apod. - v angličtině "runtime") prostředí nejméně v té verzi, pro kterou je daný program určen. Zpětná kompatibilita se plně zachovává (až na pár výjimek), takže program napsaný a zkompilovaný třeba pro Javu 1.1 na Javě 1.5 spustíme bez problémů. Pro kompilaci zdrojových kódů potřebujeme vývojářský balík, nazvaný Java Development Kit (příp. u některých verzí mírně odlišně).
Jak už bylo řečeno ve druhém dílu seriálu, kromě "originálního" JDK od Sun Microsystems existují ještě další verze od jiných producentů A pozor, i tyto verze mají, jak si hned řekneme, svůj smysl. Přesto bude pro většinu vývojářů první volbou právě sunovská Java.
Kdy má smysl instalovat jiné verze JDK? Např. tehdy, když zjistíme, že originální verze nefunguje. Typickým případem jsou např. víceprocesorové servery, tam někdy funguje jen Blackdown Java, zatímco JDK od Sunu ani od IBM nikoliv. Obecně ale doporučuji začít vždy Javou od Sunu, a to buď hned verzí 1.5.0 (poskytuje nejvíce možností a přitom umožňuje kompilovat i programy, které potom poběží na starších verzích - současně bude ale pravděpodobně obsahovat dost chyb), nebo 1.4.2 (stabilní, dobře odladěná verze). JDK 1.5.0 má v tuto chvíli pouze Sun, u ostatních producentů najdeme verze končící 1.4.2.
Dokumentace k nástrojům JDK a ke knihovnám Javy není součástí instalačních balíků JDK, instaluje se zvlášť. Balík je poměrně objemný (pro JDK 1.5.0 má 45 MB, po rozbalení na disku zabere několikanásobek, většinou přes 250 MB), proto kdo ho nechce stahovat a má rychlé síťové připojení, může pracovat přímo s on-line verzí. Znamená to ale, že nebude mít přímý přístup do dokumentace z vývojových prostředí.
Jak provozní, tak vývojové prostředí máme k dispozici pro celou řadu platforem - nás bude samozřejmě nejvíce zajímat GNU/Linux. Potěšující je, že Javu 5.0 můžeme používat i na 64-bitových systémem (v 64-bitovém režimu) a využít tak jejich plnou sílu.
Nyní popíši typický postup instalace JDK 1.5.0 na běžnou linuxovou distribuci (uplatnitelný např. na Fedora Core, Mandrake Linuxu nebo SuSe Linuxu). Pokud není uvedeno jinak, provádí se příslušné kroky bez rootovských práv. Předpokládejme systém, na kterém dosud žádná (standardní) Java nebyla.
-console
,
ovšem ne všechny terminály jsou podporovány! Existuje také "tichý" režim, ale
ten běžně nelze doporučit. Po instalaci pokračujeme bodem 4.
rpm -i nazev_baliku.rpm
apod.
Rootovská práva jsou nutná, JDK se nainstaluje na standardní místo ve stromě /usr
(adresář pak bude něco jako jdk1.5.0_01
).
java
, nejlépe z domovského
adresáře (program spuštěn bez parametrů by měl vypsat seznam přepínačů).
Podle toho, kam se Java nainstalovala a jakým způsobem, se toto může
a nemusí podařit. Pokud to nepůjde (nejsou nastaveny cesty), máme dvě možnosti
- buď přidat do proměnné PATH
podadresář bin v adresáři JDK, nebo druhou
možnost (podle mého názoru lepší), vytvořit symbolické odkazy na programy
někde, kam se lze přes PATH
dostat (např. v /usr/local/bin
).
docs
, obsahující veškeré soubory dokumentace.
Instalaci Javy bohužel často provázejí problémy. S verzí JDK 1.5.0 je jich většina odstraněna, ale zejména pro ty, kdo zkusí instalovat některou ze starších verzí, uvedu několik častých problémů a jejich řešení. Zmíním se o některých speciálních situacích.
/usr/bin
apod.) symbolické odkazy, ale jsou tu nějaké soubory
se stejnými názvy. Soubory pravděpodobně patří ke GJC (tedy k javovské komponentě
kompilátoru GCC) nebo k nějaké implementaci Javy (třeba Kaffe). Nejlepší je začít zjištěním,
zda není něco takového nainstalováno (typicky přes RPM) - pokud je, odinstalovat to
(zde mohou bohužel vadit závislosti). Pokud se nic nenašlo nebo to nejde bez problémů
odinstalovat, doporučuji vytvořit speciální adresář, tam soubory přesunout a pak
vytvořit odkazy na soubory z nové Javy. Toto řešení má výhodu v tom, že lze vše rychle
vrátit zpět.
top
Java stále běží a bere si 100 % procesoru. To se někdy stává -
už jsem zmínil ony víceprocesorové servery, ale může to nastat i jinde. Pravděpodobně
je nějaká chyba v implementaci JVM, která s daným hardwarem způsobuje zacyklení.
Některé chyby už byly reportovány. Pokud se to stane, zkuste jinou (starší) verzi,
anebo JDK od IBM nebo Blackdown (zejména tato implementace je z tohoto pohledu velmi
spolehlivá).
javac
a java
- použije
se argument -classpath <umístění>
nebo -cp <umístění>
. Pro
častější použití se hodí nastavit proměnnou prostředí CLASSPATH
na
toto umístění (nebo více umístění oddělených dvojtečkou).
Přestože lze programy psát v libovolném editoru, kompilovat je buďto z něj (pokud to umožňuje) nebo z příkazové řádky, zejména začínajícím javistům vřele doporučuji používat některé integrované vývojové prostředí - výhody se projeví hlavně při ladění. Rád bych tedy nyní představil některá z těchto prostředí.
Všechna tato prostředí fungují (mimo jiné) pod Linuxem, proto můžeme zvolit kterékoli z nich. Doporučit některé z nich je těžké (s BlueJ navíc ani nemám zkušenosti, proto ho nemohu hodnotit), záleží na osobním vkusu. Nejlepší cestou asi bude si každé z prostředí vyzkoušet a pak se rozhodnout. Eclipse má handicap v chybějící podpoře grafického návrhu GUI (i když grafický návrh GUI není vždy ta nejlepší cesta). Osobně mám nejlepší zkušenosti s Eclipsem, z prostředí s grafickým návrhářem pak s NetBeans. V JBuilderu jsem se vždycky poněkud ztrácel, ale poslední verzi (JBuilder 2005) jsem zatím nezkoušel, třeba se ovládání změnilo k lepšímu. Ve všech případech je potřeba zajistit dostatek paměti, vývojová prostředí jsou velmi náročná (a s méně než 256 MB je nelze rozumně provozovat).
Nyní máme nainstalováno vše, co je třeba (tedy JDK včetně dokumentace a vývojové prostředí), posuneme se tedy dále. Při psaní programů (a to i těch nejjednodušších) je dobré dodržovat určité pravidla, jak má kód vypadat - usnadňuje to jak porozumnění kódu jinými lidmi, tak i orientaci v programu. Označme to termínem "štábní kultura". Protože je zbytečné vymýšlet vymyšlené, podíváme se na pravidla psaní kódu tak, jak je doporučují přímo tvůrci Javy. Druhá část příštího dílu bude věnována věcem, které jsou typické pro jazyk Java a měl by je každý znát.