OK. There are different ways to solve this I think. Please understand that
the steps below are written theoretically, I haven't actually tried them. I
leave that for you to do and report back to the community. :-)

Solution 1:
1. Create a new folder where you put the files you want to be processed.
2. Bind the antrun plugin to a suitable phase and configure it to process
the files. The processed files should be placed in some folder in target/
(the build dir).
3. Configure the war plugin (war:war) to include this folder (target/xxx) as
a webResource. You can see how to do this here:
http://maven.apache.org/plugins/maven-war-plugin/examples/adding-filtering-webresources.html

Solution 2:
1. Bind the antrun plugin to a suitable phase and configure it to process
the files in the src\main\webapp folder you want to process. Either place
the processed files in the correct folder structure under target/ (the build
dir) so that they end up correctly in the war file, or put the in a
new/separate output folder under target/. The latter will force you to
configure the war plugin according to step 3 in solution 1.
2. Configure the war plugin to exclude the files that you process through
the antrun plguin. Examples of this are found here:
http://maven.apache.org/plugins/maven-war-plugin/examples/adding-filtering-webresources.html

I'd say that solution 1 is the more robust solution. Solution 2 is cleaner
folder wise, but more error prune.

Hope it helps,
/Anders

PS. If you really need special processing you might want to consider writing
a real maven plugin for that, instead of using the antrun plugin.

On Fri, Nov 27, 2009 at 07:56, S5 <[email protected]> wrote:

> I would like to run an ant plugin here to process some custom strings in
> the
> resource files. Maven's filtering won't work for our case.
>
> Thanks
>
> On Fri, Nov 27, 2009 at 12:20 PM, Anders Hammar <[email protected]> wrote:
>
> > I think it will be easier for us to help you if you tell us what kind of
> > processing you want to do.
> >
> > You cannot insert a process step within the war plugin execution of the
> war
> > goal (which is what you say in your log output). TO do that you need to
> > adapt the plugin itself. However, the war plugin supports filtering (a
> type
> > of processing) and you can also have several web resources. Depending on
> > what you want to do one of these possibilities could be your solution,
> > possibly together with some other plugin (doing the processing).
> >
> > /Anders
> >
> > On Fri, Nov 27, 2009 at 05:58, S5 <[email protected]> wrote:
> >
> > > Hello
> > >
> > > I am using Maven 2.2.1
> > >
> > > In my project I want to process some of the resource files. This needs
> to
> > > happen after "copying webapp resources" step and before "building war"
> > > step.
> > >
> > > Here's the log:
> > >
> > > [war:war {execution: default-war}]
> > > [INFO] Packaging webapp
> > > [INFO] Assembling webapp[myapp] in [**\target\myapp-1.0-SNAPSHOT]
> > > [INFO] Processing war project
> > > [INFO] Copying webapp resources[myapp\src\main\webapp]
> > > ============> Need to process my resources here
> > > [INFO] Building war: myapp\target\myapp-1.0-SNAPSHOT.war
> > >
> > > Is there a way to accomplish this?
> > >
> > > Thanks
> > >
> >
>

Reply via email to