Colin Yates wrote:
Hi all, (using gradle 0.8).
You should upgrade if you can. The change-over will be less painful later and you'll get access to the latest archive task/copy goodness.
I have a fairly common (I think) use case - we have a single WAR which exposes an integration point for external systems. Different clients have different external systems, so when I build the project for clientA I want the WAR file to include the clientA extensions, for clientB I want.....you get the picture :) At the moment clientA has its own project which gets hold of the WAR, extracts it, inserts itself into /WEB-INF/lib and then re-jars the WAR file. This is a bit yucky.
I'm no expert, but I believe that the newer archive tasks would make it really easy to make a new WAR combining one WAR plus another JAR in it's WEB-INF/lib directory. I haven't done exactly that, but very very similar.
I am considering turning it the other way around and adding a task in the WAR project which, depending on some condition will dynamically add a dependency, so if the 'client' property = clientA it will add a dependency to the clientA JAR. What do other people do in this scenario?
Personally, I think you currently have it right with the client's pulling in what they need to build themselves. I think "turning it the other way around" will be more complicated and less intuitive to others trying to figure out what's going on.
-Paul --------------------------------------------------------------------- To unsubscribe from this list, please visit: http://xircles.codehaus.org/manage_email
