Maven is very good in handling complex dependencies, if you have dozens of components and hundreds of libraries there is nothing better than maven in the Java world right now. Of course it is not easy to get it running, it is very user-unfriendly. And I haven't figured out yet what the best way is to handle the repository of libraries (I think I'll simply turn it to offline mode and check it into the repository).

Well, the build process is never the fun part of a software project :-(