2

我正在使用 Ant 脚本生成 javadoc,而我只是使用 wnt 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”开头的每个文件,结果都是重复的。

我做错什么了吗?

谢谢

4

3 回答 3

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>   
于 2010-11-24T16:35:48.390 回答
1

您不能在javadoc任务中使用复杂的文件模式。

AntJavadoc类的 javadoc 提到这是一个限制:

==开始报价===

当前已知的限制是:

  • 模式必须是“xxx.*”的形式,其他所有模式都不起作用。

  • ...

==结束报价===

于 2010-05-12T02:35:36.070 回答
0

您可以尝试使用嵌套的include内部文件集,而不是filename喜欢

<include name="**/ABC*"/>

或使用 javadoc 标记中的 packagenames 属性作为

 <javadoc packagenames="*.abc*"
于 2010-05-07T05:35:31.567 回答