2011-02-18 2 views
4

J'ai vu que si je fais un clic droit sur un projet dans Eclipse et que je choisis de l'exécuter sur un serveur, alors je peux voir la sortie qui signifie que le projet est en cours d'exécution.Pourquoi ai-je besoin de Maven si j'utilise Eclipse?

Si tout fonctionne correctement sans Maven, quel est l'intérêt de l'utiliser. En quoi est-ce différent de simplement l'exécuter via eclipse?

Répondre

14

Maven est un outil de construction (build manager, en fait), similaire à ANT. Le travail principal de tout outil de construction est de configurer le projet, de compiler en utilisant les projets requis et de faire l'emballage final. Un script de construction dans votre projet donne un aperçu de la structure livrable du projet. Cela vous libère de toute dépendance configurable sur un IDE spécifique comme Eclipse. Tout ce que vous devez savoir est la commande standard pour effectuer la construction et vous pouvez construire votre code presque n'importe où.

Maintenant, pour en revenir à votre question, pourquoi ne pas le faire dans Eclipse?

Pour un projet simple et une petite équipe Maven est une exagération. Vous pouvez facilement communiquer la configuration, l'EDI à utiliser et indiquer les mesures spéciales à prendre. Dans les grands projets, cependant, il existe beaucoup de dépendances lâchement couplées. Pour commencer, il y aura différents paramètres pour la construction de machine de développement, la construction de test et la production. Il existe des exigences pour exécuter des tests automatisés, des tests d'intégration, stocker le package de construction (artefact) dans un référentiel communément accessible, mettre à jour des versions de divers modules.

De toute évidence, si toutes les étapes mentionnées ci-dessus sont effectuées manuellement, il y a des chances de manquer une étape. De plus, le processus manuel prend du temps.

Idéalement, vous devriez préférer un outil qui vous convient le mieux. Si vous pensez que vous êtes capable de réaliser ce dont vous avez besoin sans Maven, il est logique de ne pas utiliser Maven/build-tool simplement parce que tout le monde l'utilise.

Il est suggéré d'étudier le déploiement automatisé , cela vous donnera une meilleure idée de ce que vous pouvez faire avec les outils de construction. Et si vous ne pensez pas que cela ajoute de la valeur à votre processus actuel, vous n'avez probablement pas besoin de Maven ou de tout autre outil de construction pour le moment.

5

Votre question n'a pas beaucoup de sens. Vous attendez-vous à ce que vos utilisateurs accèdent à votre application depuis eclipse? Si oui, c'est une configuration très étrange à mon avis. Peut-être que votre question devrait porter sur la façon de construire votre projet. Maven vous fournit un moyen de centraliser les bibliothèques de dépendances dans toute l'entreprise. Il vous permet d'automatiser votre processus de construction (le plus souvent en conjonction avec un serveur CI comme hudson, régulateur de vitesse, etc.). Il vous permet d'automatiser vos tests unitaires. Maven rend l'emballage de l'application très facile à faire. Un développeur n'a pas besoin de suivre un ensemble d'étapes mystérieuses pour emballer une application. Vous ajoutez le bon plugin et Maven prend soin de lui dans le cadre du cycle de vie de la construction. Toute cette magie peut se produire en raison du principe de la convention sur la configuration. Il y a beaucoup d'autres avantages, j'en ai juste nommé quelques-uns.

Maven ne remplace pas la façon dont vous exécutez l'application, plutôt comment vous package l'application, automatiser ce processus, et de gérer les dépendances de votre application.

Quelques liens sur pourquoi quelqu'un devrait utiliser maven: -