It appears the dust has settled, and it looks like ANT has been decided upon as the way to go. That's OK with me. The questions I now have are in regards to the things that I perceived Maven would help with.
1) Dependency resolution. Let's face it, blocks will depend on other blocks. That's OK, they're supposed to. The question is for the third party block developer. How are they going to find the dependencies that they need, or publish them?
2) Unified packaging requirements. Again, blocks will require some consistency in regards to packaging requirements. Things like the standard MANIFEST.MF tags, locations of configuration files, etc. We can create an ANT task to do all this, but then you also have to worry about getting people to install and use it.
3) Not keeping JARs in the repository. That is the one thing that bugs me about the Cocoon build infrastructure. There is a mountain of JAR files that are needed in some contexts, but not others. You can't keep it straight.
4) Reactor builds. Being able to start a build, and having the build system dynamically order the blocks according to their present needs is very valuable. For example, I could create a block, and someone else use that block. If my block includes a new dependency on another block, that third party block needs to be able to ensure the build includes the new dependency.
5) Minimal tweaking. I can't say how much is needed to be tweaked in the current ANT builds, but other projects required endless tweaking as the needs of the project grew.
Again, I am not pressing for Maven, but these are the features that we get for free with it. Since it looks like we are using ANT, how do we resolve these needs?
--
"They that give up essential liberty to obtain a little temporary safety
deserve neither liberty nor safety."
- Benjamin Franklin