2011-08-12 3 views
1

comment devrais-je obtenir maven pour déployer mon application pour moi.maven déploiement au serveur

je veux être capable de taper

mvn deply:devserver (or something like that) et l'ont fait les choses suivantes

SCP tous les pots de dépendance à la devserver à distance/var/lib/tomcat6/shared/dossier de l'entreprise

SCP le fichier de guerre dans le dossier devserver distant/var/lib/tomcat6/webapps

et puisque je peux déjà entendre les énoncés/questions "pourquoi fais-tu comme ça, tu peux juste construire la guerre avec les dépendances dedans "b la bla bla je vais répondre. ce serveur va exécuter environ 35 fichiers de guerre différents (soyez gentil j'ai hérité de ce projet) tout en utilisant les mêmes dépendances donc je ne vois pas le point d'avoir le chargeur de classe tomcat chargeant les mêmes 50 bibliothèques environ 35 fois. id plutôt avoir tomcat les charger au démarrage et les partager avec les webapps.

et NON, le gestionnaire n'est pas installé sur cette instance de tomcat alors s'il vous plaît ne pas y aller. Les gars de la sécurité ne nous laisseront pas installer la console de gestion sur un serveur visible publiquement, donc tous les déploiements doivent être effectués via des copies de fichiers SCP.

Je pourrais le faire en environ 5 minutes avec fourmi et je n'ai pas éliminé la possibilité d'écrire simplement un script shell pour le faire mais je voudrais donner une chance à maven d'abord.

Répondre

1

Vous devez écrire le 'déploiement' du code sur le serveur. Si vous choisissez d'utiliser Ant, faites-le, mais Maven n'est pas le bon outil pour ce travail. L'objectif 'déployer' de Maven est utilisé pour déployer des artefacts construits sur un serveur de référentiel afin que d'autres projets puissent être téléchargés en tant que dépendances. Ce n'est pas le 'déploiement' auquel vous songez. Si vous avez vraiment besoin de ce fait par Maven, il existe un plugin maven ant qui vous permet d'exécuter des tâches Ant dans Maven et vous pouvez lier ceci à votre étape de déploiement. Je vous déconseille cependant car cela va à l'encontre des conventions d'utilisation de Maven comme outil de construction.

+0

cool, merci. Je vais assommer un script shell rapide pour le faire ensuite. – scphantm

+0

J'ai fini par écrire un script shell pour ce faire – scphantm

+0

Le script shell est bon, mais vous pouvez aussi envisager un langage de script multi-plateforme à moins que vous ne soyez absolument certain que vous ne l'utiliserez que sous linux/unix. Si vous voulez être capable de le faire depuis n'importe quel environnement, Ant, python, ou scala sont mes choix préférés. –

Questions connexes