Sestavení a spuštění programu bez integrovaného vývojového prostředí
Základní životní cyklus javového programu
-
Program sestává z jedné (ale obvykle více) tříd (class).
-
Ukážeme na příkladu třídy s názvem NazevTridy :
-
Zdrojový kód každé (veřejně přístupné,
public
) třídy je umístěn v jednom souboru (NazevTridy.java
)
Postup:
-
vytvoření zdrojového textu (libovolným editorem čistého textu)
-
překlad (nástrojem
javac
) -
spuštění
Příklad:
-
překládá se
javac NazevTridy.java
(název souboru se třídou včetně přípony.java
!!!) -
spouští se vždy udáním
java NazevTridy
(název třídy bez přípony.class
!!!)
Demo "Ahoj!"
-
Půjde o podobný jednoduchý demoprogram, jaký jsme spouštěli v BlueJ pod názvem Hello .
-
Dále uvedený postup (cesty v souborovém systému, spouštění programů z příkazové řádky apod. odpovídá systémům Windows.
-
Pro Linux a Mac OS X nutné mírně modifikovat (odlišné uvádění cest v souborovém systému apod.). Princip je ale v každém případě shodný.
-
Zdrojový kód bude vypadat takto:
public class Hello { // Program spouštíme aktivací funkce "main" public static void main(String[] args) { System.out.println("Ahoj!"); } }
Zdrojový kód (tj. Hello.java
) bude umístěn do našeho pracovního adresáře, tj. např. c:\devel\pb162
.
Překlad "Ahoj!"
-
Máme nainstalován Java SDK 6, 7 nebo 8
-
Jsme v adresáři
c:\devel\pb162
, v něm je souborHello.java
-
Spustíme překlad
javac Hello.java
-
Je-li program správně napsán, přeloží se "mlčky"
-
(výsledný
.class
soubor bude v témže adresáři jako zdroj)
Spuštění "Ahoj!"
-
Poté spustíme program Hello:
java -classpath . Hello
-
Volba překladače
-classpath
zajistí, že (dříve přeložené) třídy používané při spuštění této třídy budou přístupné pod adresářem _ _ . -
-classpath .
tedy značí, že třídy (soubory.class
) se budou hledat v odpovídajících podadresářích aktuálního adresáře (adresáře.
) -
Je-li program správně napsán a přeložen, vypíše se
Ahoj!
Vytvoření zdrojového textu "Ahoj!" ("for dummies")
Vytvoření a editace zdrojového kódu v editoru PSPad (dostupný zdarma, instalovaný na všech Win strojích v učebnách na FI):
Překlad "Ahoj!" ("for dummies")
Překlad překladačem javac
(úspěšný, bez hlášení překladače):
Spuštění "Ahoj!" ("for dummies")
Spuštění voláním java
:
Co znamená spustit program?
-
Nejběžnější spuštění javového programu spočívá ve spuštění metody
main
: -
Metoda může mít parametry typu
String
(řetězec), které se -
předávají při spuštění z příkazového řádku do pole
String[] args
-
Metoda
main
musí býtstatic
a nevrací žádnou hodnotu - návratový typ je vždy(!)void
. -
Její hlavička musí vypadat vždy přesně tak, jako ve výše uvedeném příkladu, jinak nebude spuštěna! (Jedinou možnou odchylkou je jiné pojmenování formálního parametru
args
.)
Praktické informace (aneb co je nutné udělat)
-
Cesty ke spustitelným programům
(PATH)
musejí obsahovat i adresář<JAVA_HOME>/bin
Praktické informace (aneb co je vhodné udělat)
-
Systémové proměnné by měly obsahovat:
-
JAVA_HOME=<kořenový adresář instalace Javy>
, např.JAVA_HOME=c:\jdk6.0
-
Možné je nastavit i proměnnou
CLASSPATH=<cesty ke třídám>
(podobně jako vPATH
jsou cesty ke spustitelným souborům), např.CLASSPATH=c:\devel\pb162