Pendant quelques temps, j’ai cherché à pouvoir bien mixer spring-boot, tomcat & déploiement automatique dans IntelliJ. La manipulation reste dans l’esprit spring-boot. En effet, rassurez-vous, ça n’a rien de très compliqué. Il existe d’ailleurs quelques articles à ce sujet sur le site de spring :
Considérons que notre point de départ est une application spring boot déjà existante. Partons d’un pom.xml déjà existant :
Et maintenant, en quelque lignes, nous pouvons transformer notre application en un war pour tomcat sans perdre la faciliter de lancement via une ligne de commande.
De plus, dans votre classe d’initialisation (celle contenant votre méthode main), il convient d’ajouter le code suivant :
Attention tout de même. Vous pourrez rencontrer des problèmes avec des dépendances apportées par votre tomcat (par exemple, votre driver jdbc, l’api servlet, …). Donc, soyez tout de même prudent quant au war que vous générez.
Dans tous les cas, pensez à bien exploser votre war généré afin de vérifier ce qu’il contient et comment il a été packagé.