2013-09-26 1 views
3

Je voudrais avoir deux différents descripteurs web.xml dans mon projet maven. La première (par défaut) doit être incluse dans le fichier war pour le déploiement sur le serveur d'applications et la seconde doit être utilisée pour le développement en utilisant tomcat7-maven-plugin:run. Je sais qu'il y a le paramètre <tomcatWebXml> mais il spécifie Tomcat global web.xml que je ne veux pas changer. Pour jetty-maven-plugin:run Je peux spécifier <webApp>/<descriptor> ou <webApp>/<overrideDescriptor>. La première remplace la valeur par défaut web.xml par le fichier spécifié tandis que la deuxième applique le contenu du fichier spécifié en plus de la valeur par défaut web.xml.Comment utiliser différents descripteur web.xml dans tomcat7-maven-plugin: run?

Existe-t-il une possibilité de réaliser la même fonctionnalité avec tomcat7-maven-plugin?

+0

Pourriez-vous expliquer pourquoi 'tomcatWebXml' est pas bon pour vous? –

+0

Le paramètre '' remplace le fichier web.xml global de Tomcat. En fait, je veux utiliser le fichier original qui est publié dans le cadre de Tomcat. Et je ne veux pas non plus copier et coller ce fichier long de 150 Ko dans mon fichier 'web.xml'. – Vojta

Répondre

0

C'est une vieille question, mais je vais l'écrire ici au cas où quelqu'un d'autre regarde.

Oui, c'est possible. Vous pouvez le faire en remplaçant le war-builder (intégré) par défaut utilisé par tomcat7-maven-plugin, qui est org.apache.maven.plugins: maven-war-plugin Le remplacement est fait simplement ajoutant que plug-in à votre pom.xml, ainsi que la configuration supplémentaire webXml

le code ressemblera à ceci

<plugins> 
     ... 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-war-plugin</artifactId> 
      <version>2.2</version> 
      <configuration> 
       <webXml>myPath/web.xml</webXml> 
      </configuration> 
     </plugin> 
     <plugin> 
      <groupId>org.apache.tomcat.maven</groupId> 
      <artifactId>tomcat7-maven-plugin</artifactId> 
      <version>2.2</version> 
      <configuration> 
       ... other configurations here 
      </configuration> 
     </plugin> 
     ... 
    </plugins> 
+0

Bonne idée mais j'avais besoin de deux fichiers web.xml, par défaut pour le déploiement sur le serveur d'applications et en second lieu pour tomcat. Cela pourrait être fait en déplaçant votre configuration maven-war-plugin au profil maven. Mais alors les développeurs devraient spécifier ce profil chaque fois qu'ils lancent tomcat. – Vojta

Questions connexes