Maven Plugins v0.2.1 – re-written and open-sourced!
"0.1" release of these Maven plugins back in November brought a lot of attention to the project, which showed me that other Maven developers find them as useful as I do. Later, people started to send me new suggestions and open YouTrack issues which I had an extreme pleasure to work on.
"0.2.1" was recently released and I believe this version is of paramount importance and it is much more than just an upgrade. Lots of things have changed for the project in addition to features added and bugs fixed:
- Lots of people have helped me to work on this version by talking to me personally, over e-mail or by opening issues. A big thank you to all of you! Without your impact, ideas and bug reports this release would contain much less.
- The code was re-written in Groovy and open-sourced. Writing Maven plugins in Groovy is such a big fun, I’ll be talking about it in “Groovy Builds” session at Gr8Conf this year. Come to see how Maven can be better!
- A separate testing project was created with hundreds of thorough tests and examples. A GCommons library was extracted from the code into a standalone project.
- Documentation was updated and GroovyDoc is now available as well. But if you’re short of time here’s a quick presentation. The project now has its own mailing list and you’re welcome to join in order to stay informed and take part in features discussions and prioritizing future progress.
- The project gets more exposure: the Spring issue of Methods & Tools will come out with my article describing the plugins’ purpose and advantages for less technical people, and GroovyMag March 2011 just came out with an article about GCommons. And if all goes well, the hudson/jenkins plugin will be covered by “Jenkins: The Definitive Guide” as John Ferguson Smart kindly accepted my proposal to contribute to the book. This sounds really nice and I hope this is just the beginning.
- JFrog and JetBrains tools keep working so well that I’m now convinced that a combination of Artifactory, TeamCity and YouTrack is an excellent option these days.
Now, what actually changed in this release? Versions
"0.2.1"release notes are available in YouTrack and on the Wiki but here are some highlights:
- All plugins now support a
<runIf>conditional execution. It allows to invoke them conditionally, something that is otherwise impossible with Maven.
"maven-copy-plugin"– bullet-proof FTP download, Zip entries unpack, archives update,
<resource>, FTP/SCP uploads.
"maven-hudson-plugin"– free-style jobs, CVS support,
File.directorySize(), very handy in tests!
"maven-sshexec-plugin"– multiple commands support, key-based authentication,
echoof the current directory and commands executed.
Now, what’s next? A lot. I also plan to polish GroovyDocs as much as possible.