2011-12-05 23 views
6

Próbuję mieć pewne wartości właściwości zmiennych i używać profilu Maven, aby uzyskać prawidłowe wyniki. Zrobiłem to dla mojego xml hibernacji, log4j.properties i nie miałem problemu.maven zmienne filtrowanie właściwości

Dla mnie to zadziałało w projekcie nr 1, w którym mam kilka plików w katalogu/src/main/resources. I ustawiam właściwości i filtrowanie zasobów w maven w następujący sposób:

<properties> 
    <log.level>DEBUG</log.level> 
</properties> 


<profiles> 
    <profile> 
     <id>production</id> 
     <properties> 
    <log.level>INFO</log.level> 
     </properties> 
    </profile> 
</profiles> 

<build> 
    <resources> 
     <resource> 
      <directory>src/main/resources</directory> 
      <filtering>true</filtering> 
     </resource> 
    </resources> 
</build> 

Powyższe działało bez problemu. Jednak w moim projekcie nr 2 - mam kilka plików, które mają zmienne właściwości, ale są one pod/src/main/webapp/WEB-INF - Robię to tak samo jak powyżej, z wyjątkiem katalogu, który wskazuje WEB- INF i nie działa. Próbowałem w projekcie nr 2, aby plik działał pod/src/main/resources i działał.

Wydaje mi się, że filtrowanie zasobów ma problem, gdy plik znajduje się w katalogu/src/main/webapp/WEB-INF, ale potrzebuję tego pliku, aby przejść do folderu WEB-INF po wygenerowaniu wojny.

Czy ktoś ma wskaźnik, jak to zrobić?

Oto następujące snipet od pom.xml że robi praca (filtrowanie zasobów jest całkowicie ignorowany)

<properties> 
     <wsdl.url>http://stage/wsdl-url</wsdl.url> 
</properties> 

<profiles> 
    <profile> 
     <id>production</id> 
     <properties> 
    <wsdl.url>http://prod/wsdl-url</wsdl.url> 
     </properties> 
    </profile> 
</profiles> 

<build> 
    <resources> 
     <resource> 
      <directory>src/main/webapp/WEB-INF</directory> 
      <filtering>true</filtering> 
     </resource> 
    </resources> 
</build> 

Odpowiedz

5

miałem też ten problem; Podejrzewam, że głównym <resources> odcinek POM jest ignorowany przez plug-in wojennej, stąd mam wymyślić konfiguracji wtyczki bezpośrednio:

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-war-plugin</artifactId> 
    <configuration> 
     <filters> 
      <filter>filter.properties</filter> 
     </filters> 
     <webResources> 
      <resource> 
       <directory>WebContent/WEB-INF</directory> 
       <filtering>true</filtering> 
       <targetPath>WEB-INF</targetPath> 
      </resource> 
     </webResources> 
    </configuration> 
</plugin> 
+0

Dzięki - właśnie to, czego potrzebuję –