2015-03-11 1 views
1

Comment puis-je régler le profil de ressort actif o plugin maven tomcat? Je veux obtenir des profils actifs en environnement d'exécution, mais je reçois toujours un tableau vide.Comment puis-je définir le profil de printemps sur tomcat7-maven-plugin?

J'ai essayé d'ajouter cette SystemProperties dans la configuration du plugin dans pom.xml:

<JAVA_OPTS>-Dspring.profiles.active=local</JAVA_OPTS> 

ou

<name>spring.profiles.active</name> 
<value>locale</value> 

J'essaie d'ajouter ceci context.xml:

<environment name="spring.profiles.active" value="local" type="java.lang.String" override="false"/> 

Mais toujours pas de profil actif ...

Mes env: Java 6, tomcat7-maven-plugin version 2.2, Netbeans 8.0.2, Spring 3.1.1.RELEASE.

Mon plug-in pom.xml tomcat ressemble à ceci:

<plugin> 
    <groupId>org.apache.tomcat.maven</groupId> 
    <artifactId>tomcat7-maven-plugin</artifactId> 
    <version>2.2</version> 

    <configuration> 
     <!-- http port --> 
     <port>8084</port> 
     <contextFile>${basedir}/src/main/resources-local/context.xml</contextFile> 
     <systemProperties> 
      <JAVA_OPTS>-Dspring.profiles.active=local</JAVA_OPTS> 
     </systemProperties> 
    </configuration> 
    <executions> 
     <execution> 
      <id>tomcat-run</id> 
      <goals> 
       <goal>run-war</goal> 
      </goals> 
      <phase>package</phase> 
     </execution> 
    </executions> 
<dependencies> 

Répondre

4

Tomcat 7 Documentation montre une syntaxe différente pour les propriétés système comme celui ci-dessous. Donc, essayez de le faire de cette façon:

<plugin> 
<groupId>org.apache.tomcat.maven</groupId> 
<artifactId>tomcat7-maven-plugin</artifactId> 
<version>2.1</version> 
<configuration> 
    <systemProperties> 
    <example.value.1>alpha</example.value.1> 
    <example.value.2>beta</example.value.2> 
    </systemProperties> 
</configuration> 
</plugin> 
+0

De cette façon, je peux lire la valeur « locale » à l'aide System.getProperty (« spring.profile.active »), mais environment.getActiveProfiles() toujours retourner un tableau vide ... Il est une solution partielle, peut-être ce serait suffisant pour mon but ... Merci – Michal

+0

@CodeRunner, vos modifications étaient incorrectes. Vous devez le rétablir. Vous l'avez mis à jour avec des infos tomcat6 alors que la question concerne tomcat7. Je rejetterais l'édition, mais je n'ai pas eu de chance. Je ne peux pas rejeter l'édition maintenant. – minion

+0

@minion Je l'ai corrigé. Merci d'avoir signalé l'erreur de version - le reste de mes modifications étaient correctes et en ligne avec le docu tomcat7. –