2010-08-10 3 views
0

Nous avons un projet qui inclut toutes nos classes réutilisables, les fichiers JAR de bibliothèques tierces et tout le reste. Ce projet est fondamentalement juste où TOUTES les dépendances pour chaque projet sur lequel nous travaillons. Nous pouvons seulement utiliser fourmi et nous ne pouvons pas utiliser Ivy malheureusement. Ainsi, par exemple:Comment réutiliser un projet dépendant dans ant?

./Common-Project (includes all dependencies 
    -build.xml (will build this project, the dependencies, and package them all into 1 jar) 

./Actual-Project (just one of many projects) 
    -build.xml (will call the build.xml in common and ensure it gets the latest jar and then copy that jar into its own deployment EAR) 

Le problème est que lorsque nous construisons tous les projets réels (par exemple tous les 10 d'entre eux, ou 40, ou quoi que ce pousse à) nous finissons par la construction du projet commun chaque temps. Donc, voici ce que je veux savoir .... comment puis-je emballer cette dépendance et m'assurer qu'elle est en fait à jour, mais sans la reconstruire constamment? Je suis ouvert à toutes les suggestions (tant que c'est juste que nous faisons).

Répondre

1

Par défaut, la tâche javac ant est exécutée uniquement pour les sources mises à jour/nouvelles. IIRC, il existe un principe similaire pour la construction de bocaux. Donc normalement, ça ne devrait pas être un problème pour toi.

Mais le problème peut survenir si vous supprimez jar existant ou fichiers .class avant chaque génération. Dans ce cas, il sera répété à partir de zéro.

+0

Bon point. Je me demande si je peux/devrais me débarrasser de la tâche cleanAll. – Zombies

+0

Oui, cela semble être une première chose à essayer pour moi. –

Questions connexes