Yeah - you can follow the same pattern that the jruby and ant uses - using the plexus factories to run the scripts as components. I don't know the status of the groovy factory - but it's been removed from the parent's module list, so I presume there was a good reason. In any case, if you can harden the plexus groovy factory in the process, that'd be awesome.
http://svn.codehaus.org/plexus/plexus-component-factories/trunk/ I'm sure eventually some patterns will evolve so any component factory can easily be turned into a suported maven plugin type - just add descriptor extractor. Eric On 2/24/07, Jason Dillon <[EMAIL PROTECTED]> wrote:
Hey, I see that the jruby plugin does support both inline usage and mojo-impl stuff... so I imagine it should be simple enough to have the groovy-maven-plugin do something similar, though still need to sort out what is there now and see how/if they can be merged together into one plugin. --jason On Feb 24, 2007, at 7:02 PM, Eric Redmond wrote: Ant and JRuby plugins support both behaviors - creating plugins and embedding scripts into the POM. For consistency there's no reason Groovy shouldn't act the same way. Eric On 2/24/07, Jason Dillon <[EMAIL PROTECTED]> wrote: > > Here is a tiny example of the plugin actually doing something useful: > > https://svn.apache.org/repos/asf/geronimo/sandbox/hokeypokey/ > trunk/pom.xml > > A tiny bit of logic here is used to prevent extra downloading/ > unpacking. To make this into an official Maven plugin would be > overkill. And you can't really do this with antrun, because there is > no easy way to short-circuit the bits using <get> to fetch the zip > here. Ant's way of doing this is to use linked targets with if/ > unless attributes, which AFAIK can't be used in antrun. And > personally, I'd rather see this little bit of script, than linked > targets anyways, never did like that mess. > > IMO, this plugin helps folks (er me really) to solve some problems, > and when/if I find they are generally useful outside of the scope I > use them in, then I start to think about turning them into real Maven > plugins... > > --jason > > > On Feb 24, 2007, at 6:07 PM, Jason Dillon wrote: > > > On Feb 24, 2007, at 5:54 PM, Jason van Zyl wrote: > >> On 24 Feb 07, at 8:22 PM 24 Feb 07, Jason Dillon wrote: > >> > >>> Folks, I'm thinking about moving the plugin-support module out of > >>> Genesis and into the Mojo project. A few plugins I maintain > >>> there already use some parts of this, but the classes were simply > >>> duplicated. > >>> > >>> I'm also planning on updating the groovy-maven-plugin at the Mojo > >>> project to have the same features as the script-maven-plugin from > >>> Genesis, and that plugin uses a quite a bit of the support fluff > >>> in plugin-support. I've talked to Jeff already about this and he > >>> seems fine with it. > >> > >> I would much rather see the Groovy stuff work the same way as the > >> Beanshell and Ruby mojos. What is the script-maven plugin exactly? > >> Some BSF thing? > > > > The script-maven-plugin is really just an advanced groovy-maven- > > plugin which I whipped up to support getting better scripting into > > Maven, which we now use extensively in the TCK harness. > > > > http://geronimo.apache.org/maven/genesis/plugins/script-maven- > > plugin/index.html > > > > I had planned on adding other scripting-related muck here, though > > turns out that Groovy was all I needed, so the name is legacy. Its > > basically a much more configurable/flexible implementation of: > > > > http://mojo.codehaus.org/groovy-maven-plugin/ > > > > AFAIK, BSF-like execution isn't rich enough, unless I re-write the > > engine to allow customizing the classpath/scriptpath, etc... and > > even then I'm not sure it will cut it. > > > > This is *not* for writing mojos, but for allowing groovy Scripts to > > be run inside of Maven. The difference might be a bit subtle, but > > there are some times when you just need a tiny bit of scripting to > > solve a problem, and the work to create a Maven plugin, vote/stage/ > > release it so that it can be used is just not worth the trouble. > > > > * * * > > > > I still have some of the work I did to make richer Groovy plexus > > components around too, which is to help make Mojo's with Groovy, > > but I have not had time to deal with merging my bits into the bits > > under Mojo's mojo-sandbox/groovy-maven-tools stuff. This stuff is > > more along the lines of the Beanshell and Ruby mojo support stuff > > you are refering too... ie. writing Maven plugins with Groovy. But > > the groovy-maven-plugin (script-maven-plugin in Genesis) are > > focuses not on building plugins, but allow projects to invoke small > > Groovy scripts (or bigger ones, as it the case with the Geronimo > > TCK harness). > > > > --jason > > > --------------------------------------------------------------------- > To unsubscribe from this list please visit: > > http://xircles.codehaus.org/manage_email > > -- Eric Redmond http://codehaus.org/~eredmond <http://codehaus.org/%7Eeredmond>
-- Eric Redmond http://codehaus.org/~eredmond
