I share some folks' opinion. While Maven seems nicer in some aspects, I like
build scripts that are predictable and consistent. Even if ANT can be a pain, I
would go with it instead of Maven.
My votes:
Build system:
+0 Maven 2
+1 Ant
Project structure:
+0 Per-algorithm source tree
+1 Single source tree
Release artifact(s):
+0 Per-algorithm jar
+1 Monolithic jar
I don't think we will have that many classes to be concerned with JAR size. The
dependencies will be much larger and splitting these (or making a clear
documentation about which algorithm requires which JARs) will be more important.
Dawid