我想用java源文件中的ant创建javadoc,并且只是从这个文件的依赖类创建。这些是在java项目中,但我不需要来自所有java文件的javadoc。 有没有办法创建像javac
这样的javadocjavac includes="package/Java_source.java" destdir="dir/classes"
编译源文件和只依赖类?如果没有,那么还有另一种方式吗?
谢谢,Tamas
答案 0 :(得分:1)
您可以添加文件集和/或packageset参数:
文件集示例:
<javadoc
destdir="docs/api"
author="true"
version="true"
use="true"
windowtitle="Test API">
<fileset dir="src">
<include name="foo/bar/BaseClass.java"/>
<include name="foo/bar/baz/DependentClassA.java"/>
<include name="foo/bar/phleem/DependentClassB.java"/>
</filset>
</javadoc>
但是你必须自己弄清楚依赖类,我担心。
<强>参考:强>
没有办法在没有开始工作的情况下找出“依赖类”是什么。我唯一能想到的就是残酷的黑客攻击:
在编译的类上,使用像ASM这样的字节码分析工具,并检查代码库中的所有类是否使用了给定的类(源代码分析是不够的,因为可能的通配符导入和相同 - 包装用法)。从已使用的类列表中,构建源文件列表,并将其传递给Javadoc任务(可能最好创建执行所有这些操作的Ant任务)。但这很重要。