Re: [M2] How do I run J2EE compilers?

2006-10-12 Thread kurron

Thanks for the tip.  That has helped me a lot.  I noticed that the value of
the project.artifact property looks something like this:  artifact:
org.kurron.maven2:ear-one-WLS:ear:1.0-SNAPSHOT.  I don't suppose there is
convenient mechanism for obtaining the full path to the EAR, such as:
/home/me/.mvn/repository/.../my-app-1.0-SNAPSHOT.ear?  I think I have enough
data in the mojo to cobble together the pieces I need but I figured I would
see if there was something already built in.

Many Thanks,
Ron


Manuel Ledesma wrote:
 
 Manuel Ledesma wrote:
 kurron wrote:
 Our build system requires us to run vendor-specific J2EE compilers on 
 our EAR
 files.  I ran across the Weblogic plugin that can execute the appc 
 program
 on an archive but it requires that you specify archive information in 
 the
 POMs that create EARs.  What I would really like is to automagically 
 invoke
 appc on any EAR that gets built.  To that end, I've been 
 experimenting with
 writing a Java mojo that will invoke appc (or any other program we might
 need) right after an archive is created.  My mojo is getting handed the
 maven session, executed project,  current project and settings but, 
 to this
 point, I haven't been able to figure out how to obtain the artifact 
 that was
 just created.  I see printouts from my mojo so I know it is getting 
 called. When the mojo asks the executed project or the current 
 project what the
 artifact is, they return null.The artifact id comes back as
 empty-project from both objects.  Can anyone offer any advice on how to
 obtain the full path to the artifact that was just created?My 
 mojo is
 registered to go off during the package phase ( @phase package) and I 
 see it
 executing after the EAR/JAR/WARs are created so it appears to be getting
 called when I want it to.  Any help is appreciated.

 Thanks,
 Ron
   
 You can use the following expression

 //parameter 
 expression=${project.build.directory}/${project.build.finalName}

 base on packaging you can know if it's an ear, war or ejb.

 //




 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]


 This all you need to write the plugin
 
 **
* Compile classpath
*
* @parameter expression=${project.compileClasspathElements}
* @required
* @readonly
*/
   private ListString classpathElements;
 
   /**
* @parameter expression=${project.artifact}
*/
   private Artifact artifact;
 
   /**
* @parameter expression=${project.packaging}
*/
   private String packaging;
 
 I wrote a plugin for appc too.
 
 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]
 
 
 

-- 
View this message in context: 
http://www.nabble.com/-M2--How-do-I-run-J2EE-compilers--tf2424323.html#a6776218
Sent from the Maven - Users mailing list archive at Nabble.com.


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



[M2] How do I run J2EE compilers?

2006-10-11 Thread kurron

Our build system requires us to run vendor-specific J2EE compilers on our EAR
files.  I ran across the Weblogic plugin that can execute the appc program
on an archive but it requires that you specify archive information in the
POMs that create EARs.  What I would really like is to automagically invoke
appc on any EAR that gets built.  To that end, I've been experimenting with
writing a Java mojo that will invoke appc (or any other program we might
need) right after an archive is created.  My mojo is getting handed the
maven session, executed project,  current project and settings but, to this
point, I haven't been able to figure out how to obtain the artifact that was
just created.  I see printouts from my mojo so I know it is getting called. 
When the mojo asks the executed project or the current project what the
artifact is, they return null.The artifact id comes back as
empty-project from both objects.  Can anyone offer any advice on how to
obtain the full path to the artifact that was just created?My mojo is
registered to go off during the package phase ( @phase package) and I see it
executing after the EAR/JAR/WARs are created so it appears to be getting
called when I want it to.  Any help is appreciated.

Thanks,
Ron
-- 
View this message in context: 
http://www.nabble.com/-M2--How-do-I-run-J2EE-compilers--tf2424323.html#a6759058
Sent from the Maven - Users mailing list archive at Nabble.com.


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [M2] How do I run J2EE compilers?

2006-10-11 Thread Manuel Ledesma

kurron wrote:

Our build system requires us to run vendor-specific J2EE compilers on our EAR
files.  I ran across the Weblogic plugin that can execute the appc program
on an archive but it requires that you specify archive information in the
POMs that create EARs.  What I would really like is to automagically invoke
appc on any EAR that gets built.  To that end, I've been experimenting with
writing a Java mojo that will invoke appc (or any other program we might
need) right after an archive is created.  My mojo is getting handed the
maven session, executed project,  current project and settings but, to this
point, I haven't been able to figure out how to obtain the artifact that was
just created.  I see printouts from my mojo so I know it is getting called. 
When the mojo asks the executed project or the current project what the

artifact is, they return null.The artifact id comes back as
empty-project from both objects.  Can anyone offer any advice on how to
obtain the full path to the artifact that was just created?My mojo is
registered to go off during the package phase ( @phase package) and I see it
executing after the EAR/JAR/WARs are created so it appears to be getting
called when I want it to.  Any help is appreciated.

Thanks,
Ron
  

You can use the following expression

//parameter expression=${project.build.directory}/${project.build.finalName}

base on packaging you can know if it's an ear, war or ejb.

//




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [M2] How do I run J2EE compilers?

2006-10-11 Thread Manuel Ledesma

Manuel Ledesma wrote:

kurron wrote:
Our build system requires us to run vendor-specific J2EE compilers on 
our EAR
files.  I ran across the Weblogic plugin that can execute the appc 
program
on an archive but it requires that you specify archive information in 
the
POMs that create EARs.  What I would really like is to automagically 
invoke
appc on any EAR that gets built.  To that end, I've been 
experimenting with

writing a Java mojo that will invoke appc (or any other program we might
need) right after an archive is created.  My mojo is getting handed the
maven session, executed project,  current project and settings but, 
to this
point, I haven't been able to figure out how to obtain the artifact 
that was
just created.  I see printouts from my mojo so I know it is getting 
called. When the mojo asks the executed project or the current 
project what the

artifact is, they return null.The artifact id comes back as
empty-project from both objects.  Can anyone offer any advice on how to
obtain the full path to the artifact that was just created?My 
mojo is
registered to go off during the package phase ( @phase package) and I 
see it

executing after the EAR/JAR/WARs are created so it appears to be getting
called when I want it to.  Any help is appreciated.

Thanks,
Ron
  

You can use the following expression

//parameter 
expression=${project.build.directory}/${project.build.finalName}


base on packaging you can know if it's an ear, war or ejb.

//




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



This all you need to write the plugin

**
  * Compile classpath
  *
  * @parameter expression=${project.compileClasspathElements}
  * @required
  * @readonly
  */
 private ListString classpathElements;

 /**
  * @parameter expression=${project.artifact}
  */
 private Artifact artifact;

 /**
  * @parameter expression=${project.packaging}
  */
 private String packaging;

I wrote a plugin for appc too.

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]