Modules Flashcards
Nemodularni java: prikaz pro kompilaci
* zdroje jsou v src
* knihovny lib/x.jar, lib/y.jar
* potrebuji resources
* vystup (classes) do out
java -cp resources:lib/x.jar:lib/y.jar -d out –source-path src
Prikaz pro spusteni jaru x.jar
java -jar x.jar
Prikaz pro zabaleni trid do jaru
* zkompilovane tridy jsou v out
* nazev bude x.jar
* mam manifest file
jar -c -f x.jar -C out -m=META-INF/MANIFEST.MF .
Jak se muzu dostat k metodam a fieldum tridy, kam nemam prava?
Pomoci reflexe
Class c = Class.forName(“pkg.MyClass”);
c.getMethods()
c.getFields()
Jak zjistim obsah modulu
java –list-module my.module
Modularni java: prikaz pro kompilaci
* vystup do out
* zdroje na src
* zavisim na modulu lib/z.jar
javac –module-path lib/z.jar -d out -sourcepath src
vytvoreni jaru x.jar pro modul
* classes jsou v out
* main class je pkg.MainClass
jar –create -f x.jar -C out –main-class pkg.MainClass .
popis modulu
java –module-path x.jar –describe-module my.module
Spusteni modulu v x.jar
java -jar x.jar
Spusteni pkg.MainClass s argumenty v modulu my.module v out
java -p out -m my.module/pkg.MainClass args
Jak se vola nemodularni aplikace, ktera potrebuje modul x.jar?
java -cp someApp.jar:x.jar pkg.MainClass
Jak se v nemodularni aplikaci projevi modul?
Bude tam jako unnamed module, neboli automatic module