Jdeps 和 Jdeprscan 有什么区别?

What is the difference between Jdeps & Jdeprscan?

在Java9中引入了一个新工具jdeprscan,它与现有的jdeps工具非常相似。

据我了解,jdeprscan 的主要动机是利用已弃用注释的 'for-removal' 和 'release' 属性。

这个工具还有没有其他使用JDeps无法执行的场景或用法?

不像jdeps, jdeprscan只作为命令行工具存在,不提供任何直接的API。

您对 jdeprscan 的理解是正确的。 jdeprscan tool 恰好适用于

static analysis scanning a JAR file or some other aggregation of class files for uses of deprecated API elements.

还需要注意的是

The deprecated APIs identified by the jdeprscan tool are only those that are defined by Java SE. Deprecated APIs defined by third-party libraries aren’t reported.


不过,IMO 你也应该明白,没有将该工具与 jdeps 进行比较,另一方面,这并不是为了识别已弃用的 API,而是分析 class/package.

简而言之,它们在功能上是独一无二的。