Je me demandais quelle serait la meilleure pratique pour déployer un fichier de guerre emballé Maven à Tomcat. Utilisation du plug-in Maven Living, je reçois un fichier de guerre versé pour mon projet Par exemple: myservice-1.0.0.war p>
Je voudrais le déployer à Tomcat afin que je puisse y accéder comme suit Par exemple: http: // localhost: 8080 / myservice p>
Par défaut, Tomcat explose le fichier de guerre sous forme de répertoire avec un nom Myservice-1.0.0 sous Catalina_Home / WebApps. Mais je tiens à exploser la guerre en tant que répertoire avec un nom myservice pour les raisons mentionnées ci-dessus. p>
Je sais que je peux simplement renommer myservice-1.0.0.war >> myservice.war puis le déploier à Tomcat. P>
Je voulais savoir ce que font les autres? p>
4 Réponses :
Je le ferais en mentionnant Myservice en tant qu'etitifactide et nom final et en utilisant le plugin Maven Cargo à déployer sur Tomcat. http://cargo.codehaus.org/maven2+plugin+tips P>
Merci. J'utilise l'identifiant d'artefact comme myservice, mais j'ai aussi besoin de la version du projet qui dans mon cas est 1.0.0 Quel conseil en particulier vous référez-vous au lien que vous avez fourni?
Ok ... dans la balise de construction, il est possible de fournir le nom final qui devient le nom de la guerre. Avez-vous essayé de la définir?
Oh cool merci. J'ai oublié cela. Oui, c'est une option, je pourrais certainement essayer cela. Je suis toujours intéressé de savoir comment les autres l'approchent de leurs constructions de production.
Vous pouvez package Fichier /metta-inf/context.xml avec contenu comme celui-ci:
<?xml version="1.0"?> <!DOCTYPE Context> <Context path="myapp"> </Context>
Au lieu de renommer le fichier de guerre, vous pouvez le faire:
Il suffit d'ajouter à la suite de votre tomcat-dir / conf / conf / server.xml entre pour: MyserService-1.0.0.war Fichier P>
<Context path="/myservice" docBase="/myservice-1.0.0" debug="0" reloadable="true"></Context>
C'est raisonnable pour les versions majeures, mais si votre version change souvent, vous préférez préférer quelque chose de plus automatisé. Je pourrais mélanger votre solution avec ce qui précède, pour couper le numéro de version mineur du nom de fichier.
J'ai couru dans le même problème. Ce qui a fonctionné pour moi insérant cet élément de propriétés dans la configuration de chargement déployable: sans cet élément de propriétés, l'application serait déployée sur localhost: 8080 / quelque chose-IDM-ESB-0.9.14.2 Ce qui n'est pas ce que l'application a besoin à l'exécution. Avec la section Propriétés, l'application est déployée sur localhost: 8080 / quelque chose-idm-eSB / p> p>