Domanda

I have a EAR project that I want automatize the building process using maven exclusively.

The EAR project has

  • Standard jar modules
  • Web modules
  • EJB modules
  • RAR modules

To be able to execute the product in Jboss 4.2.3 and WebSphere 7 the EJB and RAR descriptors must be configured in different way. Also we have one jar library for each app server.

What I want is to be able to build one EAR for each apps server using the same projects, and for that I need

  1. Include a JAR module depending of the app server
  2. Use the customized descriptor in the EJB/RAR modules depending of the app server
  3. Package all this customized modules in an EAR

Can this be done using the same set of project in maven?

È stato utile?

Soluzione

Sure. Have a look at profiles in maven. They allow you to adjust various things (from the link) like:

  • <repositories>
  • <pluginRepositories>
  • <dependencies>
  • <plugins>
  • <properties> (not actually available in the main POM, but used behind the scenes)
  • <modules>
  • <reporting>
  • <dependencyManagement>
  • <distributionManagement>
  • a subset of the element, which consists of:
    • <defaultGoal>
    • <resources>
    • <testResources>
    • <finalName>

Altri suggerimenti

The best is to create separate modules like ear-websphere, or ear-jboss and make an appropriate pom file which contains the needed configuration for maven-ear-plugin.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top