Lekce 13 - JNI - Export aplikace do *.jar s *.dll/*.so
V minulém tutoriálu o Java Native Interface, JNI - Volání Java metod z JNI, jsme si ukázali jak se dá z JNI rozhraní přistupovat k Java metodám, jak volaného objektu tak i objektů z jiných tříd. Prakticky jsme si v celém seriálu předvedli hlavní princip JNI, tedy být spojovacím mostem mezi nativní a interpretovanou částí.
Nyní nás čeká prakticky závěr celého seriálu a to vyexportování aplikace do ".jar" a to včetně .dll (win32, win64) / *.so (Linux,UNIX) a předvedení jejího spouštění. Vše uděláme za pomoci Eclipse a to bez Mavenu, Antu či Grandlu. Samozřejmě samospustitelný balíček (.jar) lze vytvořit i manuálně bez IDE vč. \META-INF\ adresáře a jeho obsahu, ale to není předmětem našeho seriálu. Danou techniku lze s mírnými úpravami úspěšně aplikovat i pro *.ear nebo *.war.
Postup
Budeme postupovat podle této osnovy:
- Vytvoříme a otestujeme JNI řešení
- Nastavíme projekt v Eclipse, projekt vyexportujeme a spustíme přes CMD
1 - JNI řešení
V uvedeném příkladu si opět vytvoříme hlavní třídu "ProjektJNIJAR" a vedlejší třídu "JinaTrida". Hlavní třída bude mít jen jeden atribut a to instanci třídy "JinaTrida". Technika použití instance jako atributu třídy je známa jako kompozice (viz. Herout). Třída "JinaTrida" bude mít jen jeden atribut typu "int" s modifikátorem "private". Cílem vzorového příkladu je předvést úpravu proměnné v třídě "JinaTrida" přes nativní části (způsob viz. 11. díl). Takže se nejedná o nic nového, pouze si to zopakujeme.
...konec náhledu článku...
Pokračuj dál
Došel jsi až sem a to je super! Věříme, že ti první lekce ukázaly něco nového a užitečného.
Chceš v kurzu pokračovat? Přejdi do prémiové sekce.
Koupit tento kurz
Před koupí tohoto článku je třeba koupit předchozí díl
Obsah článku spadá pod licenci Premium, koupí článku souhlasíš se smluvními podmínkami.
- Neomezený a trvalý přístup k jednotlivým lekcím.
- Kvalitní znalosti v oblasti IT.
- Dovednosti, které ti pomohou získat vysněnou a dobře placenou práci.
Popis článku
Požadovaný článek má následující obsah:
V tutoriálu pro Java Native Interface si předvedeme tvorbu spustitelného .jar souboru, který bude *.dll/*.so knihovnu obsahovat v sobě.
Kredity získáš, když podpoříš naši síť. To můžeš udělat buď zasláním symbolické částky na podporu provozu nebo přidáním obsahu na síť.