使用 -jdkinternals 时 jdeps 没有输出

No output with jdeps when using -jdkinternals

我正在尝试使用 Java Dependency Analysis Tool (jdeps)。首先,我尝试在没有参数的情况下这样做:

jdeps myJar.jar

它列出了它使用的依赖项。到目前为止一切顺利。

org.example (myJar.jar)
   -> java.io
   -> java.lang
   -> java.text
   -> java.util
   [...]

然而,使用 jdeps 的最大原因是检测对 Java 9 中无法访问的包的依赖性(例如 sun.* 包)。所以我尝试使用 -jdkinternals 标志来检查这些不兼容性。因此我的命令是:

jdeps -jdkinternals myJar.jar

但是我运行这个时候没有输出。这是否意味着它未能运行?我错过了什么?

这意味着 jar 不使用任何 JDK 内部包

运行 jdeps -jdkinternals 并且没有输出意味着 jdeps 没有找到任何 JDK 内部包。您可以通过 运行 jdeps 不使用 -jdkinternals 并查看所有依赖包列表来验证这一点。 None 其中将是内部的。

打印 "Found no JDK internal dependencies" 可能会更好,以防止发生这样的混乱。尽管如此,知道没有输出意味着没有什么可担心的,所以庆祝你在使用 Java 9 时不会有任何问题的事实(无论如何,出于这个原因)。