It seemed to me (a little be) simplier to add the same maven.xml file to all ejb subproject than to create a new subprojet for each ejb-client. As you notice, this is not a good example of the "one artifact per project" practice.
Perhaps will ejb:ejb-client goal be deprecated ? I've noticed it is not described on http://maven.apache.org/reference/plugins/ejb/goals.html.
Nico.
[EMAIL PROTECTED] a �crit :
What are the conceptual implications of this on the one-and-only-one artifact principal? Personally, I've defined an ejb-client subproject for each ejb, with pom ID <parent-ejb-name>-client, where the POM extends the parent directory's. Looks something like this:
<project> <extends>../project.xml</extends> . . . <build> <sourceDirectory>${basedir}/../src</sourceDirectory> <unitTestSourceDirectory>${basedir}/../test</unitTestSourceDirectory> </build> </project>
I know, it seems like a lot of work, but I'm not even sure where to begin patching the ejb plugin until we have pluggable artifact types in maven. In this model, I just execute a maven process in place of the other definition of <postGoal name="ejb:install"> which you all defined below. It works pretty well...
-john
-----Original Message-----
From: nicolas De Loof [mailto:[EMAIL PROTECTED] Sent: Monday, February 09, 2004 10:28 AM
To: Maven Users List
Subject: Re: ejb:ejb-client usage
... and I defined this in my webapp project.xml to make Eclipse .classpath have a src reference to the ejb project :
<dependency> <groupId>${project.name}</groupId> <artifactId>${project.name}-ejbxxx</artifactId> <version>client-${pom.currentVersion}</version> <type>jar</type> <properties> <war.bundle>true</war.bundle> <eclipse.dependency>true</eclipse.dependency> <properties> </dependency>
Hope it can help.
Nico.
nicolas De Loof a �crit :
Just for info to other users having the same needs, I've defined this postgoal to make it work fine. Jelly code comes form patches http://jira.codehaus.org/ViewIssue.jspa?key=MPEJB-2
<postGoal name="ejb:install">
<attainGoal name="ejb:ejb-client" />
<j:set var="maven.ejb.final.client.name"
value="${maven.build.dir}/${maven.final.name}-client.jar"/>
<j:set var="artifactId_original" value="${pom.artifactId}"/>
<j:set var="artifactId_client" value="${pom.artifactId}-client"/>
<j:expr value="${pom.setArtifactId(artifactId_client)}" /> <artifact:install
artifact="${maven.ejb.final.client.name}"
type="jar"
project="${pom}"/>
<j:expr value="${pom.setArtifactId(artifactId_original)}" />
</postGoal>
Nico.
Emmanuel Venisse a �crit :
----- Original Message ----- From: "nicolas De Loof" <[EMAIL PROTECTED]>
To: "Maven Users List" <[EMAIL PROTECTED]>
Sent: Monday, February 09, 2004 3:32 PM
Subject: ejb:ejb-client usage
Hi
I'm trying to migrate an existing project to maven. This projects has some Ejbs, and I would like multiproject:install to build Ejb.jar AND Ejb-client.jar. Another sub-project (webapp) has ejb-client.jar for dependency.
When using multiproject:install, Ejb.jar is build but not Ejb-client.jar. I can see in plugin.jelly that "ejb:ejb-client" looks like an optional goal in the ejb plugin.
Do I need to define a postgoal to call ejb:ejb-client and
install:artifact for Ejb-client.jar or is they're any way to handle this
automatically ?
Yes or if you have a default goal for all your project, you can add an attainGoal to ejb:ejb-client.
Nico.
--------------------------------------------------------------------- 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]
--------------------------------------------------------------------- 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]
--------------------------------------------------------------------- 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]
