Java kompilácie a build v príkazovom riadku - Základy
Tento článok je napísaný pre úplných začiatočníkov, tak aby ste boli schopní vytvoriť programy v Jave bez IDE (vývojového prostredia). Rozhodne vám IDE odporúčam, väčšinou sú zadarmo. Ale niekedy, keď sa niečo pokazí alebo je problém s IDE a až s jazykom začínate, alebo niečo robíte zle, možno si týmto spôsobom vytvoriť program a zistiť kde je chyba (napr. V JDK, IDE, apod ..). Obsahom tohto a podobných článkov nie je cieľom vysvetľovať syntax Javy a preto nečakajte vysvetlenie Java príkazov (inštrukcií). Cieľom tohto článku je vám predviesť a ukázať, že programovať možno aj bez IDE. Ovšem nerobí sa to.
Označením build nie je myslené to čo poznáte z natívnych jazykov (kompilácie + linking). Význam build v tomto článku je vytvorenie archívneho filu (súboru) projektu.
Nezamieňajte linking u natívnych jazykov s Java 9 linking cez jlink pre vytváranie runtime image.
Nastavenia systémovej premennej PATH
Najskôr samozrejme musíme nainštalovať
Javu SE. Tým je myslená inštalácia JDK (Java Developer Kit - Java
vývojový balík) a JRE (Java Runtime Enviroment - Java runtime prostredie).
Program sa vyvíja v JDK a spúšťa v JRE. Vo Windows (v mojom prípade vo
Windows 10) si nájdeme Ovládací panel a budeme postupovať takto (nutné mať
práva administrátora vo Windows): Ovládací panel -> Systém ->
Rozšírené nastavenia systému -> Rozšírené -> Prostredie premenných
-> vyberieme PATH a zvolíme upraviť -> a tu vyberieme Nový a vložíme
umiestnenie adresára \bin v Jave JDK i JRE. V oboch
inštaláciách sa nachádza adresára \bin\, v ktorých sú rôzne
nástroje. Potom je vhodné počítač reštartovať.
Ja si nainštalujem JDK do adresára C:\Program Files\JavaJDK a
JRE do C:\Program Files\JavaJRE, ale vy ich samozrejme môžete
mať v inom adresári. Takže v mojom prípade je cesta
C:\Program Files\JavaJDK\bin a
C:\Program Files\JavaJRE\bin (viď. Obrázok nižšie). Umiestnenie
adresára nehrá rolu. U starších OS (Win8, 7, Vista, XP) je postup takmer
identický.
Prečo nastavenie systémové premenné? Umožní nám to na príkazovom
riadku prístup k príkazom (programom) umiestnených v
\JavaJDK\bin\ z akéhokoľvek cesty v cmd. V danom adresári sa
napr. Nachádza javac, čo je kompilátor do byte kódu alebo
java, čo je spúšťač (launcher) Java programov.

Test inštalácie JDK a nastavenie PATH možno vykonať v
príkazovom riadku príkazom java -version. Vypíše vám to verziu
Javy, ktorú máte nainštalovanú.
Inštalácia Javy, tzn. inštalácie JRE a JDK, je platná len
pre Javu 10,09,08,07 a nižšie (starší). Od Java 11,12,13 sa inštaluje
(príp. Kopíruje) iba JDK. Nastavenie PATH do adresára \bin\
zostáva.
Hello world cez príkazový riadok bez balíčka
Najskôr si spustíme príkazový riadok. V ľavom dolnom rohu obrazovky
klikneme na tlačidlo Štart a objaví sa kontextové menu. Vyberieme si
možnosť Spustiť a do dialógu napíšeme príkaz cmd a
potvrdíme Enter. Tým sa nám spustí príkazový riadok (Command
Prompt). Samozrejme tieto postupy by mali byť platné a funkčný aj pre
Powershell.
Potom, čo sme si spustili príkazový riadok, v akomkoľvek adresári
vytvoríme zdrojový súbor, kde bude uložený zdrojový kód (napr.
ProgramJava.java). Ten môžete vytvoriť a uložiť buď cez Notepad, alebo ak
chcete, povieme si aj ako to urobiť cez príkazový riadok. Za pomocou príkazu
md ProgramJava vytvoríme adresár ProgramJava. Po
vykonaní sa doň presunieme cez príkaz cd ProgramJava.
D:\ └── ProgramJava └── ProgramJava.java
V adresári potom vytvoríme zdrojový súbor cez príkaz
fsutil file createnew ProgramJava.java 0. Ďalej vykonáme úpravu
zdrojového súboru cez príkaz notepad ProgramJava.java, súbor
uložíme a Notepad ukončíme.
public class ProgramJava { public static void main (String [] args) { System.out.println("Ahoj program z Javy "); } }

Ako ďalší krok vykonáme kompiláciu zdrojového kódu do bytekódu. Toho
opäť docielime cez príkazový riadok príkazom
javac ProgramJava.java. Kompiláciou vznikne súbor
ProgramJava.class.
D:\ └── ProgramJava ├── ProgramJava.class └── ProgramJava.java
Teraz nám ostáva len daný zobraz zdroj spustiť pres spúšťač
(launcher). To docielime príkazom java ProgramJava. Ako vidíte
všetko funguje. Všetky * .class súbory sa dajú dekompilovať cez
JDK alebo dekompilovať cez ďalšie
programy a teda pozrieť zdrojové kódy.

Vytvorenie spustiteľného jar súboru
Java disponuje spustiteľným súborom typu * .jar. Je to obdoba * .exe (.com, apod ..) od natívnych jazykov pod Windows. Jedná sa o tvz. zbuildovaný projekt. Java disponuje celkom tromi typmi zbuildovaných projektov. Hovorí sa im archive file (archívne súbory).
- .jar - Jar archive (pre štandardné SE, EE aplikácie + slúži aj ako knižnice príp. frameworky)
- .war - Web archive (pre EE webové aplikácie, môže v sebe obsahovať viac * .jar archívov)
- .ear - Enterprise archive (pre EE projekty, môže v sebe obsahovať viac * .jar a * .war archívov)
Len * .jar je samospustiteľný pod JRE. Bez nainštalovaní JRE nemožno spustiť * .jar. K spusteniu ostatných sú potrebné aplikačné servery (napr. Tomcat, WebLogic, JBoss, GlassFish, Payara, WildFly apod ..).
Všetky archívy sú kompatibilné so zips súbory. To znamená, že možno zmeniť koncovku na * .zip a daný projekt môžete rozbaliť (extrahovať). Zobrazí sa vám skompilované súbory a iné ďalšie adresáre s dátami použité v aplikácii (napr. Obrázky * .jpg, * .gif, * .xml, apod ..).
Ako prvý krok si vytvoríme súbor manifestu. Jedná sa pomocný
konfiguračný súbor pre spustenie a buildování. V adresári vytvoríme
zdrojový súbor cez príkaz
fsutil file createnew manifest.man 0.
D:\ └── ProgramJava ├── manifest.man ├── ProgramJava.class └── ProgramJava.java
Ďalej vykonáme úpravu zdrojového súboru cez príkaz
notepad manifest.man, súbor uložíme a notepad ukončíme.
Manifest-Version: 1.0 Main-Class: ProgramJava Created-By: 1.8.0_144 (Oracle Corporation)

Teraz teda prevedieme build čiže vytvoríme * .jar súbor. Spustíme
príkaz jar cmf manifest.man Program.jar *.class. Ako vidíte,
vytvorili sme Program.jar. No a teraz si daný program spustíme.
Pretože je program konzolový, je nutné ho logicky spustiť z príkazového
riadku. Samozrejme .jar možné spustiť aj dvojklikom na ploche, ale nič
neuvidíte.
D:\ └── ProgramJava ├── manifest.man ├── Program.jar ├── ProgramJava.class └── ProgramJava.java
Spustenie cez príkazový riadok vykonáme buď ako
java -jar Program.jar alebo ako
java -cp Program.jar ProgramJava.

Stiahnuť
Stiahnutím nasledujúceho súboru súhlasíš s licenčnými podmienkami
Stiahnuté 29x (1.58 kB)
Aplikácia je vrátane zdrojových kódov v jazyku Java
