调用 JDepend 解析器。
此解析器“遍历一组 Java 源文件目录并为每个 Java 包生成设计质量指标”。它允许“根据其可扩展性、可重用性和可维护性自动衡量设计的质量,以有效地管理和控制包依赖关系”。
源文件目录由嵌套的 <sourcespath> 定义。类文件目录由嵌套的 <classespath> 定义。请参阅 嵌套元素。
可选地,您还可以设置 outputfile 名称,其中存储输出。默认情况下,该任务将其报告写入标准输出。
该任务至少需要 JDepend 1.2 版本。
| 属性 | 描述 | 必需 |
|---|---|---|
| outputfile | 输出文件名。如果未设置,则输出将打印到标准输出。 | 否 |
| format | 写入输出的格式,可以是 text(默认)或 xml |
否;默认值为 text |
| fork | 在单独的 JVM 中运行测试。 | 否;默认值为 off |
| haltonerror | 如果在 jdepend 分析期间发生错误,则停止构建过程。 |
否;默认值为 off |
| timeout | 如果操作在给定时间(以毫秒为单位)内未完成,则取消操作。 | 否,如果 fork 为 false则忽略 |
| jvm | 用于调用 JVM 的命令。该命令由 java.lang.Runtime.exec() 解析。 |
否;默认值为 java,如果 fork 为 false则忽略 |
| dir | 在其中调用 JVM 的目录。 | 否,如果 fork 为 false则忽略 |
| includeruntime | 在分叉模式下隐式添加运行 jdepend 所需的类。自 Apache Ant 1.6 起。 |
否;默认值为 no,如果 fork 为 false则忽略 |
| classpathref | 要使用的 classpath,作为对在其他地方定义的路径的引用。 | 否 |
jdepend 支持四个嵌套元素:<classpath>、<classespath> 和 <sourcespath>,它们代表 路径状结构,以及 <exclude>。
<sourcespath> 用于定义要分析的源代码的路径,但已弃用。在 JDepend 的 2.5 版本中,仅分析类文件。嵌套元素 <classespath> 替换 <sourcespath>,用于定义要分析的已编译类代码的路径;<sourcespath> 变量仍然可用,以防您使用的是早期版本的 JDepend。<exclude> 元素可用于设置要忽略的包(需要 JDepend 2.5 或更高版本)。
在 build 目录上调用 JDepend,将输出写入标准输出。类路径使用引用定义。
<jdepend classpathref="base.path">
<classespath>
<pathelement location="build"/>
</classespath>
</jdepend>
这将在单独的 JVM 中在 src 和 testsrc 目录上调用 JDepend,将输出写入 docs/jdepend.xml 文件(以 XML 格式)。类路径使用嵌套元素定义。
<jdepend outputfile="docs/jdepend.xml" fork="yes" format="xml">
<sourcespath>
<pathelement location="src"/>
</sourcespath>
<classpath>
<pathelement location="classes"/>
<pathelement location="lib/jdepend.jar"/>
</classpath>
</jdepend>
使用构建目录作为要分析的类文件的基目录调用 JDepend,并忽略 java.* 和 javax.* 包中的所有类。
<jdepend classpathref="base.path">
<exclude name="java.*>
<exclude name="javax.*>
<classespath>
<pathelement location="build"/>
</classespath>
</jdepend>