mvn help:effective-pom is your friend here. S.
On Thu, Aug 23, 2012 at 5:20 PM, Stuart Stephen <[email protected]> wrote: > I worked it out. I was being an idiot as usual. User error. > > Strangely it was producing the EAR file pretty much correctly, even though my > plugin wasn't configured properly. > > I replaced... > > <groupId>maven-ear-plugin</groupId> > <artifactId>maven-ear-plugin</artifactId> > with... > > <groupId>org.apache.maven.plugins</groupId> > <artifactId>maven-ear-plugin</artifactId> > Then changed... > > <includeLibInApplicationXml>true</includeLibInApplicationXml> > to... > > <includeInApplicationXml>true</includeInApplicationXml> > > Suddenly it did what I asked. Clever that. > > -----Original Message----- > From: Stuart Stephen [mailto:[email protected]] > Sent: 23 August 2012 16:01 > To: [email protected] > Subject: maven-ear-plugin is not including jarModule into application.xml > > Hi, > > [This question is also on StackOverflow: > http://stackoverflow.com/questions/12093346/maven-ear-plugin-is-not-including-jarmodule-into-application-xml] > > I've been following the example on the maven-ear-plugin site that [shows how > to add third-party libraries to the generated application.xml][1]. However, > it does not appear to be working as I expected. Similarly the web module > [contextRoot][2] is being ignored. > > According to the [documentation][3] what I am trying to do should be entirely > possible. > > The context root of a Web module might be customized using the contextRoot > parameter. > Please note that third party libraries (i.e. JarModule) are not included in > the generated application.xml (only ejb-client should be included in a java > entry). However, a jar dependency could be included in the generated > application.xml by specifying the includeInApplicationXml flag. > > I have the following output when it executes the build in my application.xml. > > <?xml version="1.0" encoding="UTF-8"?> > <!DOCTYPE application PUBLIC > "-//Sun Microsystems, Inc.//DTD J2EE Application 1.3//EN" > "http://java.sun.com/dtd/application_1_3.dtd"> > <application> > <display-name>MyApp.EAR</display-name> > <module> > <ejb>MyApp.jar</ejb> > </module> > <module> > <web> > <web-uri>MyApp.war</web-uri> > <context-root>/MyApp.Web</context-root> > </web> > </module> > </application> > > From the following maven configuraton (pom.xml). > ... > <modelVersion>4.0.0</modelVersion> > <groupId>com.blah</groupId> > <artifactId>MyApp.EAR</artifactId> > <version>1.0</version> > <packaging>ear</packaging> > > <build> > <plugins> > <plugin> > <groupId>maven-ear-plugin</groupId> > <artifactId>maven-ear-plugin</artifactId> > <version>2.7</version> > <configuration> > <applicationName>MyApp</applicationName> > <modules> > <ejbModule> > <groupId>com.blah</groupId> > <artifactId>MyApp.EJB</artifactId> > </ejbModule> > <webModule> > <groupId>com.blah</groupId> > <artifactId>MyApp.Web</artifactId> > <contextRoot>MyApp</contextRoot> > </webModule> > <jarModule> > <groupId>org.slf4j</groupId> > <artifactId>slf4j-simple</artifactId> > > <includeLibInApplicationXml>true</includeLibInApplicationXml> > </jarModule> > </modules> > <archive> > <manifestEntries> > > <WebLogic-Application-Version>${weblogic.version}</WebLogic-Application-Version> > </manifestEntries> > </archive> > </configuration> > </plugin> > </plugins> > </build> > > <dependencies> > <!-- web and ejb modules --> > <dependency> > <groupId>com.blah</groupId> > <artifactId>MyApp.EJB</artifactId> > <version>1.0</version> > <type>ejb</type> > </dependency> > <dependency> > <groupId>com.blah</groupId> > <artifactId>MyApp.Web</artifactId> > <version>1.0</version> > <type>war</type> > </dependency> > </dependencies> > ... > > It is immediately obvious that the application.xml is not being generated as > I intended. > 1. The contextRoot supplied is not correct in the application.xml, instead > the default name of MyApp.Web is output instead of the specified MyApp. > 2. The org.slf4j jarModule specified is missing entirely from the > application.xml. > What am I doing wrong? > Debug from Maven is shown below. > > [DEBUG] > ----------------------------------------------------------------------- > [DEBUG] Goal: > org.apache.maven.plugins:maven-ear-plugin:2.4.2:generate-application-xml > (default-generate-application-xml) > [DEBUG] Style: Regular > [DEBUG] Configuration: <?xml version="1.0" encoding="UTF-8"?> <configuration> > <description>${project.description}</description> > <displayName>${project.artifactId}</displayName> > <encoding default-value="UTF-8"/> > > <generatedDescriptorLocation>${project.build.directory}</generatedDescriptorLocation> > <includeLibInApplicationXml default-value="false"/> > <project>${project}</project> > <version default-value="1.3"/> > > <workDirectory>${project.build.directory}/${project.build.finalName}</workDirectory> > </configuration> > > [1]: > http://maven.apache.org/plugins/maven-ear-plugin/examples/including-a-third-party-library-in-application-xml.html > [2]: http://maven.apache.org/plugins/maven-ear-plugin/modules.html#webModule > [3]: > http://maven.apache.org/plugins/maven-ear-plugin/usage.html#Advanced_ConfigurationDisclaimer: > > The contents of this E-mail plus any attachment is intended for the use of > the addressee only and is confidential, proprietary and may be privileged. It > will not be binding upon Trace Group or any group company (Trace). Opinions, > conclusions, contractual obligations and other information in this message in > so far as they relate to the official business of Trace must be specifically > confirmed in writing by Trace. If you are not the intended recipient you must > not copy this message or attachment, use or disclose the contents to any > other person, but are requested to telephone or E-mail the sender and delete > the message and any attachment from your system. Trace takes all reasonable > precautions to ensure that no virus or defect is transmitted via this e mail, > however Trace accepts no responsibility for any virus or defect that might > arise from opening this E-mail or attachments. > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected]: > > The contents of this E-mail plus any attachment is intended for the use of the > addressee only and is confidential, proprietary and may be privileged. It > will not be > binding upon Trace Group or any group company (Trace). Opinions, conclusions, > contractual obligations and other information in this message in so far as > they relate to > the official business of Trace must be specifically confirmed in writing by > Trace. If you > are not the intended recipient you must not copy this message or attachment, > use or > disclose the contents to any other person, but are requested to telephone or > E-mail > the sender and delete the message and any attachment from your system. Trace > takes all reasonable precautions to ensure that no virus or defect is > transmitted via > this e mail, however Trace accepts no responsibility for any virus or defect > that might > arise from opening this E-mail or attachments. > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
