Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

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.

Možnosti stiahnutie JavaFX SDK - Okenné aplikácie v Java FX

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 udalosti
  • controls - zahŕňa všetky ovládacie prvky, ktorými JavaFX disponuje
  • fxml - definuje FXML API pre JavaFX
  • graphic - 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šie
  • media - obsahuje API pre prácu so zvukom a videom
  • swing - podpora pre swingové komponenty
  • web - 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.

Hladanie potrebnych knižníc - Okenné aplikácie v Java FX

V Maven centrálnom repozitári nájdete požadované knižnice.

Výber správnej verzie knižnice - Okenné aplikácie v Java FX

Vyberiete si požadovanú verziu. Je dôležité, aby ste mali rovnakú verziu pre všetky moduly JavaFX.

Zobrazenie všetkých súborov, ktoré možno stiahnuť - Okenné aplikácie v Java FX

Cez odkaz "View all" si zobrazíte zoznam všetkých dostupných súborov, ktoré možno stiahnuť.

Prevzatie knižnice so zdrojovými kódmi - Okenné aplikácie v Java FX

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ýsledok zkompilovaného programu - Okenné aplikácie v Java FX

V nasledujúcom cvičení, Riešené úlohy k 4.-9. lekciu JavaFX, si precvičíme nadobudnuté skúsenosti z predchádzajúcich lekcií.


 

Predchádzajúci článok
PRIPOMIENKOVÉ narodenín v JavaFX - Dokončenie aplikácie
Všetky články v sekcii
Okenné aplikácie v Java FX
Preskočiť článok
(neodporúčame)
Riešené úlohy k 4.-9. lekciu JavaFX
Článok pre vás napísal Petr Štechmüller
Avatar
Užívateľské hodnotenie:
Ešte nikto nehodnotil, buď prvý!
Autor se věnuje primárně programování v Javě, ale nebojí se ani webových technologií.
Aktivity