Exécuter pot de commande exclure des fichiers
J'ai suivi La Java De L'Outil D'Archivage, mais ne pouvait pas trouver comment exclure des dossiers.
Par exemple, j'ai les fichiers de la copie de travail annuaire:
workingcopy
--src
--.svn
-- com
--.svn
--WebContent
Je voudrais compiler et créer jar uniquement des classes sous src
à l'exclusion de tous les dossiers de départ avec .svn répertoire. Je veux l'exécuter à partir de cmd
comme jar -cf test.jar
etc..
Comment puis-je le faire?
Vous devez vous connecter pour publier un commentaire.
Cela pourrait être une solution pratique pour votre problème: il ne sera pas exclure la subversion directory (répertoire), mais comprennent uniquement les fichiers de classe (en supposant, vous ne pas mettre de la catégorie fichiers sous contrôle de version):
Poursuite de l'amélioration: séparer le code à partir de fichiers de classe. Vous ne voulez pas vérifier dans les fichiers de classe (construire des artefacts) de toute façon:
javac
pour compiler les fichiers source java et (optionnel)jar
de créer des bibliothèques.jar
ne peux pas compiler et vous n'avez pas besoin ant ou maven, mais surtout ant simplifie grandement le processus de construction (mais vous devez apprendre/comprendre ant notions de base). maven simplifie encore plus, mais maven est un peu plus difficile à comprendre. Et il exige (permanente) de la connexion internet.Cela peut être fait avec une commande:
Le problème avec
jar
est que, si le répertoire est adopté, il sera ajouté de manière récursive avec tous de contenu. Notre but est donc de passer seulement les fichiers et seuls ceux d'entre eux qui n'ont pas '.svn' sous-chaîne dans le chemin. À cette finfind
commande est utilisée avec 2 conditions:-not -path "*/.svn*"
filtre tous les fichiers svn-not -type d
filtre tous les répertoiresCela va exclure les répertoires vides de le bocal bien.
Il ya un concept appelé à l'Exportation dans le SVN. si vous utilisez que vous obtiendrez à la structure sans la .dépôt svn. Elle est légèrement différente de la Check-Out.
Après cela, vous devez être en mesure de faire régulièrement un pot de commande à partir de ce répertoire au lieu du dépôt du dossier.
C'est facilement réalisable (avec beaucoup d'autres choses) par construire des outils comme maven et ant et gradle
Il ne ressemble pas à le bocal programme par lui-même sera en mesure de le faire. Vous aurez besoin d'ajouter à un autre type de script pour accomplir ce que vous cherchez.
Il vous ressemble peut-être à l'aide de windows, donc je pense que l'on peut écrire dans ce morceaux manquants de cette façon.
Espère que cette aide.
Comme dit par javamonkey79, je ne tthink vous pouvez le faire juste avec le
jar
outil lui-même. Ce que vous devez faire est de considérer ant, et son jar tâche.