JDEPS(1) JDK JDEPS(1) (NAME) jdeps-openjdk21 - OpenJDK 21 (SYNOPSIS) jdeps [options] path ... options . : o o o o path .class JAR . (DESCRIPTION) jdeps (package-level) (class-level) . .class JAR (fully qualified class name) . . jdeps . DOT ( -dotoutput ). (POSSIBLE OPTIONS) -? -h --help . -dotoutput dir --dot-output dir DOT . jdeps .dot archive-file-name.dot summary.dot . -s -summary . -v -verbose . : -verbose:class -filter:none -verbose:package . -verbose:class . -apionly --api-only API public protected (checked exceptions). -jdkinternals --jdk-internals API JDK . --classpath -include . -p -e -s . : API JDK . -cp path -classpath path --class-path path . --module-path module-path (module path) . --upgrade-module-path module-path (upgrade module path) . --system java-home . --add-modules module-name[, module-name...] (root set) . --multi-release version JAR (multi-release) . version base . -q -quiet -generate-module-info . -version --version . (MODULE DEPENDENCE ANALYSIS OPTIONS) -m module-name --module module-name . --generate-module-info dir module-info.java . JAR . --dot-output --class-path . (open modules) --generate-open-module . --generate-open-module dir module-info.java JAR . --dot-output --class-path . --check module-name [, module-name...] . (module descriptor) (transition reduction) . (unused qualified exports) . --list-deps API JDK ( ) . class path module path . --no-recursive . --list-reduced-deps --list-deps (implied reads edges) . M1 M2 M2 (transitive requires) M3 M3 M1 . --print-module-deps --list-reduced-deps . jlink --add-modules . --ignore-missing-deps . (OPTIONS TO FILTER DEPENDENCES) -p pkg_name -package pkg_name --package pkg_name . . -p -e . -e regex -regex regex --regex regex . -p -e . --require module-name ( ). --package --regex --require . -f regex -filter regex . . -filter:package . . -filter:archive . -filter:module . -filter:none -filter:package -filter:archive . -filter . --missing-deps . -p -e -s . (OPTIONS TO FILTER CLASSES TO BE ANALYZED) -include regex . . -p -e . -P -profile . . -R --recursive . -R -filter:none . -p -e -f . --no-recursive . -I --inverse . . --require --package --regex . --compile-time -R. . JAR . (EXAMPLE OF ANALYZING DEPENDENCIES) Notepad.jar . macOS: $ jdeps demo/jfc/Notepad/Notepad.jar Notepad.jar -> java.base Notepad.jar -> java.desktop Notepad.jar -> java.logging (Notepad.jar) -> java.awt -> java.awt.event -> java.beans -> java.io -> java.lang -> java.net -> java.util -> java.util.logging -> javax.swing -> javax.swing.border -> javax.swing.event -> javax.swing.text -> javax.swing.tree -> javax.swing.undo : C:\Java\jdk1.9.0>jdeps demo\jfc\Notepad\Notepad.jar Notepad.jar -> java.base Notepad.jar -> java.desktop Notepad.jar -> java.logging (Notepad.jar) -> java.awt -> java.awt.event -> java.beans -> java.io -> java.lang -> java.net -> java.util -> java.util.logging -> javax.swing -> javax.swing.border -> javax.swing.event -> javax.swing.text -> javax.swing.tree -> javax.swing.undo INVERSE-- (EXAMPLE USING THE --INVERSE OPTION) $ jdeps --inverse --require java.xml.bind Inverse transitive dependences on [java.xml.bind] java.xml.bind <- java.se.ee java.xml.bind <- jdk.xml.ws java.xml.bind <- java.xml.ws <- java.se.ee java.xml.bind <- java.xml.ws <- jdk.xml.ws java.xml.bind <- jdk.xml.bind <- jdk.xml.ws JDK 21 2023 JDEPS(1)