Hi, IIRC, the groovy-maven-plugin at mojo is comming beta really soon.
For having tested it increating maven plugins, i would say it is easyer to use than java but i am biased as i already know some of the java trick for plugin descriptors. I would prefer Groovy as it is quite easy to create programs with but i would also prefer java as currently no ide as native groovy auto completion. Regards, Raphaël 2007/7/17, Ritu Kedia <[EMAIL PROTECTED]>:
Hi, We are currently investigating the implementation language for writing Maven2 Plugins. We have looked at all the 3 options available today in Maven2, namely: - Java - Ant Scripting - Scripting Languages (looked at Beanshell, Groovy, JRuby) Our parameters for evaluation are: - Maturity of the platform - Ease of Development - Ease of Maintenance - Performance - Available set of tools/libraries required for Plugin development Based on our analysis/requirements we have reduced our choice of implementation language to: Java OR Groovy In terms of Performance, Java would beat the scripting options by a big percentage. However for build activities, which involve heavy Disk IO tasks, the performance comparisons would have to be looked at differently. For instance we compared the performance of a pre-compiled Groovy script with Java where both of them issued 100 Copy statements on a directory containing 10 files of 10KB each and both Groovy and Java used the same Java libraries to do the Copy. The execution times were almost on par. We would like to know if others have done similar profiling and have results/experience that they can share. Performance is an important factor in our decision making and so any comments on this would be much appreciated. In terms of Maturity, Groovy is yet to come up the mark. But given that it is in the process of being standardized as the sanctioned scripting language on Java Platform (JSR-241), I would expect it to be a safe bet. In terms of Ease of Development and Available set of tools/libraries for Plugin development, Groovy's AntBuilder seems to be a very attractive option. We have also taken a look at the available Maven Plexus Utilities for the same. Firstly the documentation for Plexus utilities is poor and secondly but more importantly the available set of Plexus utilities do not match up to the Ant utilties/tasks. Secondly we are talking about build tasks, most of which are already available in Ant and are very well documented and tested. Thirdly Groovy's AntBuilder provides a declarative syntax for defining Ant tasks and makes the scripts much more concise and readable. Finally Groovy provides us the power of a programming language along with declarative Ant inclusion. These factors coupled with the fact that we are basically migrating our existing jelly scripts that use ant heavily and have so far sufficed for all our requirements, to Maven MOJOs makes Groovy more attractive than Java. I am really interested to know the views of people on Groovy vs Java for writing build tasks. Also I saw that the Groovy MOJO support is in alpha release. When is it expected to be available as a stable release? What is Maven team's overall push and direction in promoting Groovy as the standard scripting language. Thanks in advance, Ritu
