You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@maven.apache.org by Jared Blitzstein <ma...@blitzstein.net> on 2007/04/27 18:11:13 UTC

Filtering resources into a directory other than classes for a webapp?

I'm using the webapp archetype and our apps are configured to have  
the properties files in /WEB-INF/config/ rather than /WEB-INF/ 
classes/ which maven defaults to for resource filtering. I see the  
"targetPath" tag in the resource tag but that's only for packages,  
not directories outside classes. I tried tricking it with a path  
of ../config/ but that only works when it creates the classes  
directory, not the WAR or exploded app. Any suggestions to get this  
to work without having to run an ant script afterwards to move the  
files?

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: Filtering resources into a directory other than classes for a webapp?

Posted by Jared Blitzstein <ma...@blitzstein.net>.
Yeah, looks like 2.0 doesn't work and when I switched it to 2.0.2 it  
worked right away.

On May 7, 2007, at 12:31 PM, stig.lau wrote:

>
> I was looking for the same solution, and the war-plugin seemed right.
> But my config files were always put in the war root instead of the  
> folder i
> specified.
> The solution for me was to use the 2.0.2 version of the war-plugin  
> instead
> of 2.0.
>
>
> Heinrich Nirschl wrote:
>>
>> On Fri, 2007-04-27 at 15:17 -0400, Jared Blitzstein wrote:
>>> Thanks, I've read that as well as http://maven.apache.org/guides/
>>> getting-started/index.html#How%20do%20I%20filter%20resource%20files
>>> and it's basically the same thing as the WAR plugin...I believe.
>>> Since I need this on both the WAR and the exploded app for jetty,  
>>> I'm
>>> not sure if the war plugin is what I need to be using. But the files
>>> are actually being filtered, it's just they're not ending up in / 
>>> WEB-
>>> INF/config/ like I want.  They're going to /WEB-INF/classes/WEB-INF/
>>> config/. Here is the snippet from my pom
>>>
>>> 		<filters>
>>> 			<filter>src/main/filters/${env}.var</filter>
>>> 		</filters>
>>> 		<resources>
>>> 			<resource>
>>> 				<directory>src/main/webapp/WEB-INF/config</directory>
>>> 				<filtering>true</filtering>
>>> 				<targetPath>WEB-INF/config/</targetPath>
>>> 			</resource>
>>> 		</resources>
>>>
>>>
>>> Any ideas?
>>>
>>
>> I have not tried this, but according to the documentation a
>> configuration similar to this for the war plugin should work:
>>
>>   <plugin>
>>     <groupId>org.apache.maven.plugins</groupId>
>>     <artifactId>maven-war-plugin</artifactId>
>>     <configuration>
>>       <filters>
>>         <filter>src/main/filters/${env}.var</filter>
>>       </filters>
>>       <webResources>
>>          <resource>
>>            <!-- the config files you want to filter should be in this
>> directory -->
>>            <directory>configurations</directory>
>>            <targetPath>WEB-INF/config</targetPath>
>>            <!-- enable filtering -->
>>            <filtering>true</filtering>
>>          </resource>
>>       </webResources>
>>     </configuration>
>>   </plugin>
>>
>> - Henry
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
>> For additional commands, e-mail: users-help@maven.apache.org
>>
>>
>>
>
> -- 
> View this message in context: http://www.nabble.com/Filtering- 
> resources-into-a-directory-other-than-classes-for-a-webapp-- 
> tf3658613s177.html#a10360724
> Sent from the Maven - Users mailing list archive at Nabble.com.
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
>


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: Filtering resources into a directory other than classes for a webapp?

Posted by "stig.lau" <st...@lau.no>.
I was looking for the same solution, and the war-plugin seemed right. 
But my config files were always put in the war root instead of the folder i
specified.
The solution for me was to use the 2.0.2 version of the war-plugin instead
of 2.0.


Heinrich Nirschl wrote:
> 
> On Fri, 2007-04-27 at 15:17 -0400, Jared Blitzstein wrote:
>> Thanks, I've read that as well as http://maven.apache.org/guides/ 
>> getting-started/index.html#How%20do%20I%20filter%20resource%20files  
>> and it's basically the same thing as the WAR plugin...I believe.  
>> Since I need this on both the WAR and the exploded app for jetty, I'm  
>> not sure if the war plugin is what I need to be using. But the files  
>> are actually being filtered, it's just they're not ending up in /WEB- 
>> INF/config/ like I want.  They're going to /WEB-INF/classes/WEB-INF/ 
>> config/. Here is the snippet from my pom
>> 
>> 		<filters>
>> 			<filter>src/main/filters/${env}.var</filter>
>> 		</filters>
>> 		<resources>
>> 			<resource>
>> 				<directory>src/main/webapp/WEB-INF/config</directory>
>> 				<filtering>true</filtering>
>> 				<targetPath>WEB-INF/config/</targetPath>
>> 			</resource>
>> 		</resources>
>> 
>> 
>> Any ideas?
>> 
> 
> I have not tried this, but according to the documentation a
> configuration similar to this for the war plugin should work:
> 
>   <plugin>
>     <groupId>org.apache.maven.plugins</groupId>
>     <artifactId>maven-war-plugin</artifactId>
>     <configuration>
>       <filters>
>         <filter>src/main/filters/${env}.var</filter>
>       </filters>
>       <webResources>
>          <resource>
>            <!-- the config files you want to filter should be in this
> directory -->
>            <directory>configurations</directory> 
>            <targetPath>WEB-INF/config</targetPath>
>            <!-- enable filtering -->
>            <filtering>true</filtering>
>          </resource>        
>       </webResources>
>     </configuration>
>   </plugin>
> 
> - Henry
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
> 
> 
> 

-- 
View this message in context: http://www.nabble.com/Filtering-resources-into-a-directory-other-than-classes-for-a-webapp--tf3658613s177.html#a10360724
Sent from the Maven - Users mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: Filtering resources into a directory other than classes for a webapp?

Posted by Heinrich Nirschl <he...@gmail.com>.
On Fri, 2007-04-27 at 15:17 -0400, Jared Blitzstein wrote:
> Thanks, I've read that as well as http://maven.apache.org/guides/ 
> getting-started/index.html#How%20do%20I%20filter%20resource%20files  
> and it's basically the same thing as the WAR plugin...I believe.  
> Since I need this on both the WAR and the exploded app for jetty, I'm  
> not sure if the war plugin is what I need to be using. But the files  
> are actually being filtered, it's just they're not ending up in /WEB- 
> INF/config/ like I want.  They're going to /WEB-INF/classes/WEB-INF/ 
> config/. Here is the snippet from my pom
> 
> 		<filters>
> 			<filter>src/main/filters/${env}.var</filter>
> 		</filters>
> 		<resources>
> 			<resource>
> 				<directory>src/main/webapp/WEB-INF/config</directory>
> 				<filtering>true</filtering>
> 				<targetPath>WEB-INF/config/</targetPath>
> 			</resource>
> 		</resources>
> 
> 
> Any ideas?
> 

I have not tried this, but according to the documentation a
configuration similar to this for the war plugin should work:

  <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-war-plugin</artifactId>
    <configuration>
      <filters>
        <filter>src/main/filters/${env}.var</filter>
      </filters>
      <webResources>
         <resource>
           <!-- the config files you want to filter should be in this directory -->
           <directory>configurations</directory> 
           <targetPath>WEB-INF/config</targetPath>
           <!-- enable filtering -->
           <filtering>true</filtering>
         </resource>        
      </webResources>
    </configuration>
  </plugin>

- Henry


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: Filtering resources into a directory other than classes for a webapp?

Posted by Jared Blitzstein <ma...@blitzstein.net>.
Thanks, I've read that as well as http://maven.apache.org/guides/ 
getting-started/index.html#How%20do%20I%20filter%20resource%20files  
and it's basically the same thing as the WAR plugin...I believe.  
Since I need this on both the WAR and the exploded app for jetty, I'm  
not sure if the war plugin is what I need to be using. But the files  
are actually being filtered, it's just they're not ending up in /WEB- 
INF/config/ like I want.  They're going to /WEB-INF/classes/WEB-INF/ 
config/. Here is the snippet from my pom

		<filters>
			<filter>src/main/filters/${env}.var</filter>
		</filters>
		<resources>
			<resource>
				<directory>src/main/webapp/WEB-INF/config</directory>
				<filtering>true</filtering>
				<targetPath>WEB-INF/config/</targetPath>
			</resource>
		</resources>


Any ideas?


On Apr 27, 2007, at 12:28 PM, Heinrich Nirschl wrote:

> On 4/27/07, Jared Blitzstein <ma...@blitzstein.net> wrote:
>> I'm using the webapp archetype and our apps are configured to have
>> the properties files in /WEB-INF/config/ rather than /WEB-INF/
>> classes/ which maven defaults to for resource filtering. I see the
>> "targetPath" tag in the resource tag but that's only for packages,
>> not directories outside classes. I tried tricking it with a path
>> of ../config/ but that only works when it creates the classes
>> directory, not the WAR or exploded app. Any suggestions to get this
>> to work without having to run an ant script afterwards to move the
>> files?
>
> The war plugin can do that. Have a look at
> http://maven.apache.org/plugins/maven-war-plugin/examples/adding- 
> filtering-webresources.html
>
> - Henry
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
>


Re: Filtering resources into a directory other than classes for a webapp?

Posted by Heinrich Nirschl <he...@gmail.com>.
On 4/27/07, Jared Blitzstein <ma...@blitzstein.net> wrote:
> I'm using the webapp archetype and our apps are configured to have
> the properties files in /WEB-INF/config/ rather than /WEB-INF/
> classes/ which maven defaults to for resource filtering. I see the
> "targetPath" tag in the resource tag but that's only for packages,
> not directories outside classes. I tried tricking it with a path
> of ../config/ but that only works when it creates the classes
> directory, not the WAR or exploded app. Any suggestions to get this
> to work without having to run an ant script afterwards to move the
> files?

The war plugin can do that. Have a look at
http://maven.apache.org/plugins/maven-war-plugin/examples/adding-filtering-webresources.html

- Henry

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org