Manuálna inštalácia JavaFX
V článku Úvod do JavaFX sme si ukázali inštaláciu JavaFX ako globálny knižnice pre NetBeans a jej následné použitie v projekte. Tento článok obsahuje alternatívne postupy pre inštaláciu JavaFX ako binárky a ďalej manuálnu inštaláciu JavaFX ako knižnice a je určený pre pokročilejších publikum.
Už vieme, že JavaFX bohužiaľ nie je od Javy 11 súčasťou JRE. Knižnica sa naďalej vyvíja a poskytuje skvelú platformu pre vytváranie bohatých desktopových aplikácií.
Inštalácie JavaFX ako binárky
Už sme si hovorili, že ju môžeme nainštalovať ako binárku alebo ako knižnicu. Pre úplnosť si najprv ukážme aj prvú možnosť.
Inštalácia
Binárne súbory JavaFX sa nachádza na stránkach organizácie gluónov. Odtiaľ si stiahnite SDK podľa vášho operačného systému.
SDK rozbaľte niekam na disk, kam máte právo zápisu. Ďalej je potreba
informovať systém, že JavaFX je prítomná. To zariadime pridaním
premennej PATH_TO_FX
medzi systémové premenné.
Vytvorenie projektu
Pre otestovanie správnosti inštalácie si vytvorte niekde súbor
HelloFX.java
, do ktorého vložte nasledujúci kód:
import javafx.application.Application; import javafx.scene.Scene; import javafx.scene.control.Label; import javafx.scene.layout.StackPane; import javafx.stage.Stage; public class HelloFX extends Application { @Override public void start(Stage stage) { String javaVersion = System.getProperty("java.version"); String javafxVersion = System.getProperty("javafx.version"); Label l = new Label("Hello, JavaFX " + javafxVersion + ", running on Java " + javaVersion + "."); Scene scene = new Scene(new StackPane(l), 640, 480); stage.setScene(scene); stage.show(); } public static void main(String[] args) { launch(); } }
Skompilovaniu programu
V priečinku so súborom HelloFX.java
si spustíme príkazový
riadok. To urobíte napr. Otvorením zložky v prieskumníkovi, kde sa vrátite
o 1 zložku hore pomocou Alt + ↑. Teraz stlačíte
Shift, kliknete na priečinok s projektom pravým tlačidlom a
vyberiete "Otvoriť tu okno príkazového riadku" (prípadne okno
PowerShell).
Do príkazového riadka vložíme nasledujúci príkaz, pomocou ktorého skompilujeme program:
javac --module-path %PATH_TO_FX% --add-modules=javafx.controls HelloFX.java
Ak konzoly vypíše hlášku, že nepozná príkaz
javac, znamená to, že buď nemáte nainštalovanú Javu,
alebo nemáte pridanou cestu k súboru javac
v systémovej
premennej PATH. Je teda potrebné cestu pridať rovnako, ako v
prípade JavaFX.
Po skompilovaniu sa vytvorí nový súbor HelloFX.class
, ktorý
spustíme pomocou nasledujúceho príkazu:
java --module-path %PATH_TO_FX% --add-modules=javafx.controls HelloFX
Ak všetko prebehne úspešne, uvidíte okno s vypísanými informáciami o použitej verzii Javy a JavaFX.
Čo presne znamenajú jednotlivé riadky kódu si vysvetlíme neskôr. Teraz sa len chceme presvedčiť, že máme JavaFX správne nainštalovanú.
Inštalácie JavaFX ako knižnice
Knižnice sú hostované na stránkach Maven central a sú rozdelené do nasledujúcich kategórií:
base
- definuje základné API pre JavaFX, binding, property, kolekcie a udalosticontrols
- zahŕňa všetky ovládacie prvky, ktorými JavaFX disponujefxml
- definuje FXML API pre JavaFXgraphic
- obsahuje hlavné API pre graf scény všetkých ovládacích prvkov (layouty, kontajnery, životný cyklus aplikácie, grafické tvary, transformácia, canvas, ošetrenie vstupu, kreslenie, spracovanie obrázkov), ďalej obsahuje API pre animácie, podporu CSS štýlov a ďalšiemedia
- obsahuje API pre prácu so zvukom a videomswing
- podpora pre swingové komponentyweb
- obsahuje API pre zobrazenie webových stránok za pomoci WebView komponenty
Inštalácia
Pre minimálnu konfiguráciu budeme potrebovať celkom 3 knižnice:
base
, graphics
a controls
. Vytvorte si
novú zložku, do ktorej stiahnete tieto tri knižnice.
V Maven centrálnom repozitári nájdete požadované knižnice.
Vyberiete si požadovanú verziu. Je dôležité, aby ste mali rovnakú verziu pre všetky moduly JavaFX.
Cez odkaz "View all" si zobrazíte zoznam všetkých dostupných súborov, ktoré možno stiahnuť.
Stiahnite súbor ako sa zdrojovými kódmi (source), tak špecifický podľa operačného systému (Windows, Linux, MacOS).
Vytvorenie projektu
V priečinku s projektom opäť vytvorte súbor HelloFX.java
a
do obsahu vložte kód, ktorý je uvedený vyššie.
Teraz sa pozrieme, ako povedať Jave, aby použila stiahnuté knižnice.
Aby sme správne skompilovali program, musíme JavaFX "prilinkovať". To
zariadime parametrom -cp
(CLASSPATH), ktorému odovzdáme plnú
cestu ku knižniciam. Pretože máme zdrojový kód programu a knižnice vedľa
seba, bude výsledný príkaz pre kompiláciu vyzerať nasledovne:
javac -cp javafx-base-11.0.1-sources.jar;javafx-controls-11.0.1-sources.jar;javafx-graphics-11.0.1-sources.jar HelloFX.java
Používatelia systému Linux použijú ako separátor oddeľujúce jednotlivé knižnice znak ":".
Spustenie programu
Konečne sa dostávame na spustenie programu. Pomocou nasledujúceho príkazu spustíme aplikáciu.
java --module-path javafx-base-11.0.1-linux.jar:javafx-controls-11.0.1-linux.jar:javafx-graphics-11.0.1-linux.jar --add-modules=javafx.controls HelloFX
Ak sa všetko podarilo, malo by sa objaviť okno s informáciami o verzii samotnej Javy a knižnice JavaFX.
V nasledujúcom cvičení, Riešené úlohy k 4.-9. lekciu JavaFX, si precvičíme nadobudnuté skúsenosti z predchádzajúcich lekcií.