Extended Form
javac --module-path mods -d feeding feeding/zoo/animal/feeding/*.java feeding/module-info.java
The -d
option is used to specify the destination directory for the compiled Java class files.
Abbreviated Form
javac -p mods -d feeding feeding/zoo/animal/feeding/*.java feeding/module-info.java
--class-path <path>, -classpath <path>, -cp <path>
WARN: All of these are equivalent!
- --class-path
- -classpath
- -cp
If you must use an internal API that has been made inaccessible by default, then you can break encapsulation using the --add-exports
command-line option.
javac -p out --add-exports moduleA/com.example.util=moduleB -d out/moduleB **/.java
jar -cvf mods/zoo.visitor.jar -C consumerModule .
Extended Form
java --module-path mods --module zoo.animal.feeding/zoo.animal.feeding.Task
Abbreviated Form
java -p mods -m zoo.animal.feeding/zoo.animal.feeding.Task
show module resolution output during startup
java --show-module-resolution -p mods -m zoo.visitor/zoo.visitor.Tourist
When this option is present, the JVM will output information about how it resolved module dependencies.
java -p mods -d moduleName
java --module-path mods --describe-module moduleName
extended:
java --module-path mods --describe-module zoo.tours.api
compact:
java -p mods -d zoo.tours.api
output
zoo.tours.api file:///Users/enrico/github/ocp17/sybex-1Z0-829-chapter-12/mods/zoo.tours.api.jar
exports zoo.tours.api
requires java.base mandated
java --list-modules
jar --file mods/zoo.staff.jar --describe-module
#equivalent
jar --file mods/zoo.staff.jar -d
The jdeps command lists information about dependencies within a module.
jdeps –s zoo.dino.jar
-s
/-summary
- Summarizes output--jdk-internals
/-jdkinternals
- The jdeps -jdkinternals option includes analysis of dependencies on JDK internal APIs
extended
jlink --module-path mods --add-modules zoo.animal.talks --output zooApp
Abbreviated
jlink -p mods --add-modules zoo.animal.talks --output zooApp
There is no abbreviated form for the parameter output.
--add-modules
- List of modules to package--output
- Name of output directory
This is the contents of the generated folder:
cd zooAPP/
ls
output:
bin conf include legal lib man release
#generated by CGPT
jmod create --class-path out/moduleA --module-version 1.0 --module-path out out/moduleA.jmod
- create
- extract
- describe
- list
- hash