<target name="jdepend" description="Generate dependency metrics for each package">
<jdepend format="xml" outputfile="${jdepend.dir}/jdepend-report.xml">
<classpath>
<pathelement path="classes" />
</classpath>
</jdepend>
</target>
运行任务后出现如下的错误:
1234567891011121314
BUILD FAILED
build.xml:59: Missing classespath required argument
at org.apache.tools.ant.taskdefs.optional.jdepend.JDependTask.execute(JDependTask.java:397)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
at org.apache.tools.ant.Task.perform(Task.java:364)
at org.apache.tools.ant.Target.execute(Target.java:341)
at org.apache.tools.ant.Target.performTasks(Target.java:369)
at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216)
at org.apache.tools.ant.Project.executeTarget(Project.java:1185)
at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:40)
at org.eclipse.ant.internal.ui.antsupport.EclipseDefaultExecutor.executeTargets(EclipseDefaultExecutor.java:32)
at org.apache.tools.ant.Project.executeTargets(Project.java:1068)
at org.eclipse.ant.internal.ui.antsupport.InternalAntRunner.run(InternalAntRunner.java:423)
at org.eclipse.ant.internal.ui.antsupport.InternalAntRunner.main(InternalAntRunner.java:137)
查看JDependTask.java文件的397行:
123456
if (getSourcespath() == null && getClassespath() == null) {
throw new BuildException("Missing classespath required argument");
} else if (getClassespath() == null) {
String msg = "sourcespath is deprecated in JDepend >= 2.5 - please convert to classespath";
log(msg);
}
发现是getClassespath() == null了,跳到221行:
123
public Path getClassespath() {
return classesPath;
}