You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@maven.apache.org by Nathan Coast <na...@codeczar.com> on 2004/10/15 02:21:52 UTC

future-proofing plugins

Hi,

I've read a few threads about jelly being dropped as the defacto 
scripting language for 2.0.  If I'm developing a plugin, what's the best 
approach to minimise the effort when it eventually is moved to 2.0?  I 
know 2.0 is still some way off.

I guess jelly tag classes are a big no?  Should I stick to writing Ant 
tags to be safe, or is there some other preferred tag language that 
works for 1.X that will still work in 2.0?

cheers
Nathan
-- 
Nathan Coast
Managing Director
codeczar ltd
mobile: (852) 9049 5581
email:  mailto:nathan@codeczar.com
web:    http://www.codeczar.com

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: future-proofing plugins

Posted by Brett Porter <br...@gmail.com>.
You should write as much as possible in Java then wrap it up in Jelly
(see artifact plugin for a reasonable example).

Jelly should continue to work, but Java will be preferred. There are
likely to be other alternatives too.

Cheers,
Brett

On Fri, 15 Oct 2004 08:21:52 +0800, Nathan Coast <na...@codeczar.com> wrote:
> Hi,
> 
> I've read a few threads about jelly being dropped as the defacto
> scripting language for 2.0.  If I'm developing a plugin, what's the best
> approach to minimise the effort when it eventually is moved to 2.0?  I
> know 2.0 is still some way off.
> 
> I guess jelly tag classes are a big no?  Should I stick to writing Ant
> tags to be safe, or is there some other preferred tag language that
> works for 1.X that will still work in 2.0?
> 
> cheers
> Nathan
> --
> Nathan Coast
> Managing Director
> codeczar ltd
> mobile: (852) 9049 5581
> email:  mailto:nathan@codeczar.com
> web:    http://www.codeczar.com
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
> 
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: future-proofing plugins

Posted by Jason van Zyl <jv...@maven.org>.
On Thu, 2004-10-14 at 20:21, Nathan Coast wrote:
> Hi,
> 
> I've read a few threads about jelly being dropped as the defacto 
> scripting language for 2.0.  If I'm developing a plugin, what's the best 
> approach to minimise the effort when it eventually is moved to 2.0?  I 
> know 2.0 is still some way off.

Write a simple Java class is the best way for it to work in anything.
This is generally what I've advocated but people seem to like to use
Jelly to program in. Jelly was meant to be a glue of sorts. 

As far as scripting goes, John is attempting to get most Jelly tag libs
working but the general xml-ish style of scripting will be available via
Marmalade in Maven 2.x. The other scripting languages are available in
the underlying framework, which is Plexus, are Beanshell, Jython and
Groovy though Beanshell is currently my favourite because of its
robustness.

> I guess jelly tag classes are a big no?  

You can write Jelly tag libraries as John is going to make them work
with Marmalade but I think you're always better off writing some Java
because then it is reusable. Your Java code is then usable in Maven by
wrapping that code in a Jelly tag/lib. As far as I'm concerned anyone
actually programming in Jelly is mad. Same principal with JSP tag
libraries, it's just not sensible to program inside the tag, it's just
meant to be a bridge. If you write stuff in Java then you can wrap it
for use in Jelly, JSP tags, Marmalade, Ant or whatever else.

> Should I stick to writing Ant 
> tags to be safe

You mean if you're going to write Java? Definitely not, just write Java
especially if it's something you want to reuse. Maven 2.x now bootstraps
without Ant and does use Ant in the core at all.

Maven 2.x does have a super minimal set of interfaces that you can use
but it is not mandatory. The interfaces we are using allow for
long-lived processes and usability inside things like IDEs, and there
will be advantages to using the interfaces but it won't be necessary to
bind yourself to anything if you don't want to. I plan to use OGNL to
glue any Java class into Maven 2.x. As Maven 2.x approaches its first
alpha there will be more info. Don't ask when it's coming out because I
honestly don't know at this point.

> , or is there some other preferred tag language that 
> works for 1.X that will still work in 2.0?

If you follow the approach of writing some and making Jelly tags it will
be fine for the most part, but Maven 2.x is definitely more strict about
what's actually allowed in a plugin but for the most part you should be
fine. I'll leave John to field the Marmalade specifics.

> cheers
> Nathan

-- 
jvz.

Jason van Zyl
jason@maven.org
http://maven.apache.org

happiness is like a butterfly: the more you chase it, the more it will
elude you, but if you turn your attention to other things, it will come
and sit softly on your shoulder ...

 -- Thoreau 


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org