我将在一个项目上工作,该项目使用JDepend来自动生成循环包依赖关系的报告,作为我们CI构建的一部分。(我主要对包级依赖关系感兴趣,所以我一直在使用精简版的XSLT来获得更集中的报告——否则,它就是普通的JDepend。)
然而,我们即将把项目转移到Java 8,我发现JDepend不能对用JDK 1.8编译器编译的代码工作。JDepend似乎不再主动更新。
我正试图找到一个替代:
- 适用于JDK 1.8编译类和/或jar。
- 报告包和/或jar级别的循环依赖。
- 可以从Ant自动执行(命令行可执行即可)。
- 生成一个报告,该报告可以从项目主页链接并在浏览器中打开(例如HTML或纯文本输出-而不是桌面应用程序)。
- 还(最好)生成—或者可以配置/调整为生成—仅针对循环依赖项的重点报告(如果修改XSLT, JDepend可以这样做)。
Java 8在/bin
中包含jdeps.exe
。虽然这不是显式地调用循环依赖,但它确实显示了项目包的所有依赖项。