2010-05-07 46 views
2

我使用Ant脚本生成javadoc和我寻找基于特定的模式有些类仅仅只有Wnt信号蚂蚁,所以我写了:Ant脚本中FileSet的问题?

<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”开头的每个文件,结果都是重复的。

我做错了什么?

感谢

回答

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> 
+0

好的,非常感谢你的努力。 – ipkiss 2010-11-25 00:05:42

0

你可以尝试用内部文件集嵌套include,而不是filename

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

或使用packagenames的javadoc标签内属性为

<javadoc packagenames="*.abc*" 
+0

感谢您的回复,我已经试过<包括名称= “**/ABC *”/>但结果都是一样的,像我一样之前。它不能与 ipkiss 2010-05-07 05:58:57

+0

以及任何可能出现的相同文件**/ABC * .java出现在代码库的2个不同包中? – JoseK 2010-05-07 07:04:19

+0

不是,它只有文件,例如我有ABC_E1.java,ABC_E2.java结果是ABC_E1.java,ABC_E1.java,ABC_E2.java,ABC_E2.java;甚至更多所有不以“ABC”开头的文件也显示出来。如果我不使用(或类似的东西),那么结果是不重复的,但它有其他文件不以”ABC“开头(我不想) – ipkiss 2010-05-07 07:09:02

1

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

为Ant Javadoc类的Javadoc提到此作为限制:

==开始报价===

当前已知的局限性是:

  • 图案必须是这样的形式“xxx。*”,其他模式都不起作用。

  • ...

==最终报价===