我使用Ant脚本生成javadoc,我只是想让Ant根据某种模式查找一些类,所以我写道:
<javadoc access="public" source="1.6" sourcepath="src" destdir="dest" >
<fileset dir="src" casesensitive="yes" defaultexcludes="yes">
<filename name="**/ABC*.java"/>
</fileset>
</javadoc>
这意味着我只希望Ant查找仅以“ABC”开头的源文件,并为这些文件生成javadoc。但是,对于以“ABC”开头的每个文件,结果都是重复的。
我做错了吗?
由于
答案 0 :(得分:3)
问题来自同时使用sourcepath
属性和嵌套fileset
标记。如果您取消sourcepath
并且只有fileset
,那么您应该没事。即,而不是
<javadoc access="public" source="1.6" sourcepath="src" destdir="dest" >
<fileset dir="src" casesensitive="yes" defaultexcludes="yes">
<filename name="**/ABC*.java"/>
</fileset>
</javadoc>
只是这样做:
<javadoc access="public" source="1.6" destdir="dest" >
<fileset dir="src" casesensitive="yes" defaultexcludes="yes">
<filename name="**/ABC*.java"/>
</fileset>
</javadoc>
答案 1 :(得分:1)
您无法在javadoc
任务中使用复杂的文件模式。
Ant Javadoc
类的javadoc提到了这个限制:
==开始引用===
目前已知的限制是:
模式必须是“xxx。*”形式,其他每种模式都不起作用。
...
==结束报价===
答案 2 :(得分:0)
您可以尝试使用嵌套include
内部文件集,而不是像filename
那样
<include name="**/ABC*"/>
或使用javadoc标记中的packagenames属性
<javadoc packagenames="*.abc*"