Problèmes avec FileSet dans le script Ant?
Question
J'utilise script Ant pour générer javadoc et je Ant juste seulement Wnt à la recherche de certaines classes à partir d'un certain modèle, donc je l'ai écrit:
<javadoc access="public" source="1.6" sourcepath="src" destdir="dest" >
<fileset dir="src" casesensitive="yes" defaultexcludes="yes">
<filename name="**/ABC*.java"/>
</fileset>
</javadoc>
Cela signifie que je veux que Ant chercher le fichier source qui commence par « ABC » et ne génèrent javadoc pour ces fichiers. Cependant, les résultats sont awayls en double pour chaque fichier commençant par « ABC ».
Ai-je fait quelque chose de mal?
Merci
La solution
Le problème vient d'utiliser à la fois l'attribut sourcepath
et la balise fileset
imbriquée. Si vous supprimer la sourcepath
et juste le fileset
, vous devriez être bien. à-dire, au lieu de
<javadoc access="public" source="1.6" sourcepath="src" destdir="dest" >
<fileset dir="src" casesensitive="yes" defaultexcludes="yes">
<filename name="**/ABC*.java"/>
</fileset>
</javadoc>
il suffit de faire:
<javadoc access="public" source="1.6" destdir="dest" >
<fileset dir="src" casesensitive="yes" defaultexcludes="yes">
<filename name="**/ABC*.java"/>
</fileset>
</javadoc>
Autres conseils
Vous ne pouvez pas utiliser fichiers-modèles complexes dans la tâche javadoc
.
Le javadoc de la classe Ant Javadoc
mentionne cela comme une limitation:
== Début citation ===
limitations connues sont:
-
modèles doit être de la forme "xxx. *", Tous les autres modèle ne fonctionne pas.
-
...
== Fin citation ===
Pouvez-vous essayer avec un include
imbriqué dans fileset, au lieu de filename
comme
<include name="**/ABC*"/>
ou utiliser l'attribut packagenames au sein de balise javadoc comme
<javadoc packagenames="*.abc*"