2016-04-22 3 views
-1

Je suis en train de construire simple build.xml pour créer une boule de goudron avec certaines conditions. J'ai essayé toutes les options possibles, mais n'atteint pas ce que je cherche.goudron Ant fileset exclure tous les subdirs mais un modèle en utilisant

Je cherche une sorte de wild card que je peux utiliser pour exclure tout, et utiliser modèle pour inclure uniquement les subdirs qui sont nécessaires.

ci-dessous est la source échantillon Dir. Il a environ 30 sous dirs, comme invites, audio, vidéo, etc. Chacun de ces sous dirs a plusieurs sous dirs avec des langues spécifiques comme en, fr-fr, etc. Chaque lang dirs a quelques fichiers comme .au, txt . htm, etc.

Source Dir:

Locale/

`-- prompts 
     |-- en 
      |-- some files 
     |-- en-gb 
      |-- some files 
     |-- fr-FR 
      |-- some files 
     |-- es-ES 
      |-- some files 

    `-- audio 
     |-- en 
      |-- some files 
     |-- en-gb 
      |-- some files 
     |-- fr-FR 
      |-- some files 
     |-- es-ES 
      |-- some files 
    `-- video 
     |-- en 
      |-- some files 
     |-- en-gb 
      |-- some files 
     |-- fr-FR 
      |-- some files 
     |-- es-ES 
      |-- some files 

Ce que je suis en train est après l'exécution de fourmi, il va créer un goudron avec des fichiers de langue uniquement, et exclure all.So goudron finale devrait ressembler à quelque chose comme ci-dessous pour fr-fr lang pack. Je prévois d'utiliser -Darg = fr-FR comme argument de ant sur cmd, pour sélectionner le paquet de langue que je veux créer. De cette façon, je peux créer n'importe quel pack de langue, avec seulement ces fichiers spécifiques.

Locale/

`-- prompts 
     |-- fr-FR 
      |-- some files 

    `-- audio 
     |-- fr-FR 
      |-- some files 

    `-- video 
     |-- fr-FR 
      |-- some files 
+0

Juste pour ajouter plus d'informations, j'ai essayé d'utiliser . Mais j'obtiens toujours tous les dirs de lang inclus. Hors tout avec en spécifiant tous les noms de répertoire est pas une option, comme je l'ai besoin de créer une paquet lang spécifique au besoin de fournir le nom lang par -Darg. J'espère que c'est clair – user2917246

Répondre

0

Pour qu'un fichier soit sélectionné, il doit correspondre includes et ne doit pas correspondre excludes. Il n'y a pas de mécanisme "excluant sauf". Essayez de spécifier l'inclusion uniquement.

+0

Bonjour Brett, Merci pour vos suggestions. J'ai essayé ce que vous avez suggéré, c'est-à-dire en spécifiant inclure seulement. Mais malheureusement, ne marche toujours pas. Au final tar, je reçois toujours tous les autres dirs aussi. – user2917246

+0

Voici un échantillon de ce que j'ai essayé. Je reçois tous les fichiers sous audio, mais pour tous les langs . Je ne veux que $ lang, si $ lang = fr-FR, puis inclure les fichiers sous les invites/audio/fr-Fr/seulement. Actuellement, il aura des fichiers sous les invites/audio/fr-Fr/et invite/audio/en/et ainsi de suite. Peux-tu aider s'il te plait ? – user2917246

+0

Pourquoi avez-vous le premier tarfileset du tout? Pourquoi ne pas simplement ''? –