2010-08-05 3 views
3

J'ai hérité d'un script de génération Ant existant. Il appelle javac trois fois sur trois répertoires source différents: partagé, client et serveur. Il produit ensuite deux fichiers JAR: client.jar (shared + client) et server.jar (shared + server). Quand j'ai traduit cela en Eclipse, j'ai fini par faire trois projets avec des dépendances appropriées. Cela fonctionne, mais je ne suis pas un fan de l'explosion du projet Eclipse (c'était un cas facile, j'ai environ une douzaine de scripts ant, et certains se transforment en 6 ou 7 projets Eclipse).Quel est un moyen raisonnable de convertir un script Ant compliqué en un ensemble de projets Eclipse?

Ma question: y a-t-il un meilleur moyen?

Je devrais aussi mentionner que je ne veux pas créer simplement un projet Eclipse avec trois répertoires sources. Ce n'est pas la façon dont Ant compile le code, et il serait plus difficile de trouver des cas où les gens utilisaient des classes provenant d'une arborescence source inaccessible (en utilisant des classes de serveur à partir du code client). (J'ai aussi des classes avec le même nom dans le client et le serveur, donc je ne peux pas simplement vidanger toute la source ensemble.)

Répondre

1

Nous avons un projet similaire mis en place: 13 projets éclipse chacun avec sa propre fourmi. scripts. 7 d'entre eux sont partagés et produisent des fichiers JAR, les 6 autres sont des webapp qui sont empaquetées dans des fichiers WAR. Le script ant pour chacun des projets producteurs de WAR invoque la construction dans ses dépendances et aspire les jars générés dans la lib. Donc, non, nous n'avons pas un meilleur moyen, mais j'ai une vision floue de comment les choses pourraient être meilleures si nous passions de ant à maven:

Les 7 projets partagés changent beaucoup moins fréquemment que les webapps. Je voudrais publier ces JAR de projet partagés dans notre propre dépôt, puis pour chacune des webapps spécifier la version de la dépendance dont ils ont besoin et laisser maven gérer pour nous. De cette façon, nous n'aurions pas besoin d'avoir tous les projets JAR ouverts dans Eclipse à moins que nous ne les modifiions.

Questions connexes