Problemi con i set di file di script di Ant?
Domanda
Sto usando lo script Ant per generare javadoc e ho Ant appena soltanto Wnt a guardare per alcune classi sulla base di un determinato ritmo, così ho scritto:
<javadoc access="public" source="1.6" sourcepath="src" destdir="dest" >
<fileset dir="src" casesensitive="yes" defaultexcludes="yes">
<filename name="**/ABC*.java"/>
</fileset>
</javadoc>
Questo significa che voglio solo Ant cercare file di origine che inizia con "ABC" solo e generano javadoc per questi file. Tuttavia, i risultati sono awayls duplicati per ogni file che inizia con "ABC".
Ho fatto qualcosa di sbagliato?
Grazie
Soluzione
Il problema arriva da utilizzando sia l'attributo sourcepath
e il tag fileset
nidificato. Se rottami il sourcepath
e solo il fileset
, si dovrebbe andare bene. cioè, invece di
<javadoc access="public" source="1.6" sourcepath="src" destdir="dest" >
<fileset dir="src" casesensitive="yes" defaultexcludes="yes">
<filename name="**/ABC*.java"/>
</fileset>
</javadoc>
basta fare:
<javadoc access="public" source="1.6" destdir="dest" >
<fileset dir="src" casesensitive="yes" defaultexcludes="yes">
<filename name="**/ABC*.java"/>
</fileset>
</javadoc>
Altri suggerimenti
Non è possibile utilizzare complessi di file-patterns nel compito javadoc
.
Il Javadoc per la classe Javadoc
Formica cita questo come una limitazione:
== === Inizia Citazione
limiti conosciuti attuali sono:
-
modelli deve essere nella forma "xxx. *", Ogni altro modello non funziona.
-
...
== === Termina citazione
Si può provare con un include
nidificato all'interno set di file, invece di filename
come
<include name="**/ABC*"/>
o utilizzare l'attributo packagenames all'interno di tag javadoc come
<javadoc packagenames="*.abc*"