Úplné začátky v Javě – kompilace
Návod pro práci s Javou v konzoli, nikoliv přes IDE (NetBeans). Každý programátor v Javě by měl tyto základy určitě znát, jinak se dřív nebo později ztratí.
Napsáno: Kdysi dávno (2002?)
Aktualizace: 17.7.2008
Jak přeložit soubor s příponou .java
Pokud máte soubor s příponou .java, máte zdrojový kód
neboli zdroják. Takže:
- Stáhnete a nainstalujte JDK odněkud z http://java.sun.com/ – v době tvorby
stránky je to „JDK 6 Update 7“ zde. Vyberte
offline instalation.
JDK – Java Developement Kit – je hafo souborů, které
- umožní kompilaci,
- obsahují knihovny.
Potřebují ho jen ti, kteří chtějí v Javě programovat.
Pro běh zkompilovaných .class souborů stačí JRE – Java Runtime Environment.
- Do systémové proměnné
PATHpřidejte cestu k právě nainstalovanému JDK. To provedete buď na konzoli příkazem`set PATH=%PATH%;"D:\Program Files\j2sdk141\bin\";`
(cestu samozřemě změňte tam, kam jste JDK instalovali),
nebo nastavíte na Windows XP vOvládací panely -> Systém -> Upřesnít -> Proměnné prostředí -> Systémové proměnné.
První možnost trvá do uzavření konzole a je možno jí automatizovat pomocí.batsouboru.
Druhá možnost je trvalá. - Spusťte konzoli. To proveďte přes zkratku
Win+R, zapištecmda OK. Nyní se dostaňte pomocí dosových příkazůcd ..apod. do adresáře, kde máte zdroják. Zvažte, jestli se radši nenaučíte používat Total Commander, jelikož v tom stačí mačknoutCtrl+šipku dolů, napsatcmda stisknout Enter, a už jste doma. - Zkuste spustit kompilátor Javy –
javac.exe. Prostě napištejavaca entr. Pokud vám toto nejde, někde se stala chyba – zřejmě máte špatně systémovou proměnnouPATH. Opakuji, že nastavení pomocíset path=...platí do zavření konzole! HodnotuPATHzkontrolujete pomocí příkazuset path. Pokud by se vám to nedařilo, můžete to zkusit ošmejdit přes.bats příkazem`javac {cesta k javac.exe} %1 %2 %3 %4 %5 %6 %7 %8 %9`,který dáte do adresáře Windows. Když pak z jakéhokoliv adresáře spustíte příkaz
javac, všechny parametry se předají kompilátorujavac.exe. - Mrkněte na výpis. Pokud vám dává smysl, zapamatujte si, co všechno můžete ovlivnit.
- Přeložte zdroják příkazem
javac Zdrojak.java. Pokud jste uspěli, máte souborZdrojak.class, který už obsahuje hotový „program“.
Jak spustit soubor s příponou .class
Máte soubor s příponou .class. Ten obsahuje tzv. „bajtový
kód“ Javy.
Žádné .exe nečekejte – na to Java není dělaná.
Neexistuje nic, co by z .class udělalo rozumně veliké
nezávislé .exe (nezávislé = nepotřebuje nainstalovanou Javu).
Jinak se můžete kouknout na JexePack a český
referát o něm.
Po instalaci současných JRE (je i součástí JDK) se soubory
.jar spouštějí jako .exe. Soubory
.class není příliš často třeba spouštět, ale můžete
použít můj JavaLoader – pokud ho najdete :-)
Podívejme se, jak ze souboru .class dostat nějakou akci:
- Pokud soubor
.classnemáte ve stejném adresáři, ve kterém se nacházíte, V následujícím kroku zadejte parametr-classpath <cesta k .class>. Pokud byste to měli dělat často, pak do systémových proměnných přidejte proměnnouCLASSPATHa nastavte ji na onen adresář (kde je váš.classsoubor). - Spusťte
`java [-classpath ...] <JménoTřídy>`
V našem případě to bude
`java [-classpath ...] Zdrojak` .
Všimněte si a vtlučte si do hlavy, že jako parametr, co spustit, se nedává název souboru, ale jméno třídy!
Podmínkou pro úspěšné spuštění je, že v adresáři, který je definovaný v systémové proměnnéCLASSPATH
nebo za parametrem-classpath, se musí vyskytovat soubor"JménoTřídy.class",
a v něm musí být veřejná třídaJménoTřídya v ní statická veřejná metodamain
nevracející nic a s parametrem typu poleStringů, neboli:public class JménoTřídy { public static void main(String[]){...} }Tato metoda se spustí jako první. Je obdobou funkce
int main(int argc, char* argv[])v C++. Tyto dva kroky vám odpadnou, pokud použijete můj JavaLoader.Kdoví, kde je mu konec.
Běží? Gratuluji :-) Konzoli máte za sebou. Zbytek už je pure Java code.
Pro normální vývoj doporučují NetBeans IDE, případně jeho verzi pro začátečníky BlueJ Edition (tamtéž).
Kdyby tu něco bylo špatně, napište mi – ondra@dynawest.cz.