javac –class-path -classpath -cp -d
javac –module-path -p -d
java --module-path --module -m
INTERFAZ
[Link]: exports (exporta su paquete)
LOCATOR
[Link]: requires (requiere el modulo de la interfaz)
uses (usa la clase de la interfaz, con esto java sabe que debe buscar
implementaciones en otros modulos)
exports (exporta su paquete)
PROVIDER
[Link]: requires (requiere el modulo de la interfaz)
provides with (provee a la clase de la interfaz con una implementacion)
CONSUMER
[Link]: requires (requiere el modulo de la interfaz y el modulo del locator)
OPCIONES EN COMANDO JAVA
java -p mods –describe-module [Link]
java --list-modules (lista modulos del jdk)
java -p mods –list-modules (lista modulos del jdk y los jars de la carpeta mods)
(Ejecuta el modulo, pero antes de la ejecucion pinta como la JVM resuelve las dependencias entre
modulos. Util para debugging en caso de errores al inicial la aplicacion)
java –show-module-resolution -p feeding -m [Link]/[Link]
JDEPS
(Util para migrar un jar a modulo. Analiza las dependencias del jar sobre paquetes y a que modulos
pertenecen. Con esto al modularizar el jar sabes a que modulos apuntar el requiers)
jdeps [Link]
(Analiza las dependencias del jar sobre las apis internas del jdk)
jdeps –jdk-internals [Link]
JMODS
Comando para crear y gestionar jmod files. Estos son archivos que no pueden ir dentro un jar
JLINK
Sirve para crear runtimes del JDK con solo los modulos especificados
jlink --module-path mods --add-modules [Link] --output zooApp
Con --module-path indicamos donde estan nuestros modulos creados.
Con --add-modules indicamos que modulo queremos que incluyan en la imagen.
Con --output indicamos donde queremos que se genere la imagen