Currently, I’m running an ant target (unzip) to explode and then copy the EAR+WAR to JBoss. the jboss-maven-plugin is insufficient b/c the unpack does not explode the WAR in the EAR.
Is this explode goal/plugin included as a feature in Maven 3? thx.
Currently, I’m running an ant target (unzip) to explode and then copy the EAR+WAR to JBoss. the jboss-maven-plugin is insufficient b/c the unpack does not explode the WAR in the EAR.
Is this explode goal/plugin included as a feature in Maven 3? thx.
what about weblogic, websphere, glassfish, etc.? i don’t agree…
Well I just ran ‘mvn clean war:exploded’ and that seems like a possibility as then that directory just needs to be copied into the exploded EAR directory in the target directory after (or during?) a ‘mvn clean install’.
Has anybody else used the war:exploded goal like this for a completely exploded EAR to copy to app server deploy directory?
On 07/07/2010 2:52 AM, Martin Höller wrote: Also get a Nexus repo.
Ron
Martin Höller wrote:
1) I *must* use Maven for work project. And currently we’re stuck with 2.0.8 (we have no in-house Maven experts to help us upgrade to 2.2.x or 3.0).
2) I have read a couple books on Maven including the O’Reilly book (which is pretty decent btw). Maven is so complex that it takes months of hands-on experience to master in terms of adding modules/POMs, adding profiles, creating plugins/MOJOs, creating a custom lifecycle, setting up CI (e.g. Continuum) and Nexus repo, understanding (transitive) dependency management, learning/using m2e in Eclipse WTP envmt, etc.
3) There is an example of hooking into Maven lifecycle/builds from Ant build.xml script in the JBoss Weld (CDI RI) distro:
This is what I based my build.xml off of.
4) Maven should be able to accommodate an exploded WAR and EAR without having to package the WAR and then unexplode it. And I should not have to use a plugin like jboss-maven-plugin unpack goal to achieve this (which explodes the EAR but not the WAR). I understand that the install lifecycle phase will ultimately install the EAR into a local Maven repo, but what if I don’t necessarily need that to happen for my local dev builds on my dev box?
In the http://svn.apache.org/repos/asf/maven/maven-2/tags/maven-2.2.0/maven-core/src/main/resources/META-INF/plexus/components.xml file I see the following:
org.apache.maven.plugins:maven-resources-plugin:testResources
What exactly is ‘war’ or ‘install’ above? Is that referring to a Maven plugin (e.g. maven-war-plugin and maven-install-plugin)? or a specific goal (e.g. war:war)? Maybe I can write a custom lifecycle which uses war:exploded instead…
As I understand it, this is correct because Maven already has a pre-defined lifecycle for projects of type war. You could potentially produce a fully-customized build of Maven that did not contain the pre-defined war packaging lifecycle, but I wouldn’t want to be involved in supporting it and mandating your developers to use it instead of the usual Maven distribution etc.
You would probably need to produce both exploded-war and exploded-ear packaging types and corresponding custom lifecycles.
You may also find this webpage to be helpful, if you haven’t already been reading it: http://www.sonatype.com/people/2009/08/create-a-customized-build-process-in-maven/
Wayne