On Feb 26, 2007, at 5:32 AM, Aristedes Maniatis wrote:
On 26/02/2007, at 12:55 AM, Andrus Adamchik wrote:
* We joined the club of gullible people who bought into the Maven
hype (I thought such thing would never happen to me :-)), so now
we have a common (though crappy) platform for integration of the
code from different projects up and down stream. I remember how
much pain it was to create Maven artifacts out of Ant Cayenne in
the past.
Is it that important? Surely we want to be able to make clear
decisions about when we want to import a new version of a jar into
Cayenne. We import that file, test appropriately, then commit when
ready. As for downstream - do we care that much?
Maven integration is VERY important. Even aside from our early
efforts to integrate with OpenEJB/Geronimo, which are all maven,
there are more people than you would think who are using Cayenne-
Maven. How we do the integration is irrelevant though. If we can
provide quality and timely Maven artifact builds, build by Ant, fine.
* Maven popularity leaves some (if not much) hope that it will be
fixed someday. (OT: believe it or not, even WebObjects developers
are considering Maven these days!!!)
Maybe maven will improve. Or maybe its problems are so structural
that it will just be tweaked around the edges and more features
added to it. Maybe the problem is that (like ant) it is trying to
use XML as a programming/scripting language and failing. But unlike
ant, you end up with an XML file nested 25 levels deep and quite
incomprehensible. I've never understood why the build script is a
good place to keep the timezone in which each developer lives.
I am not arguing that Maven sucks, in fact I agreed in the quoted
message :-)
If ant was to be used again, I'd be happy to donate any parts of
our ant scripts (to do things like build .dmg, integrate subversion
build numbers into the manifest, etc) which we use here internally.
Some parts might be useful.
While I admitted that I wasted mine and everybody else's time with
Maven migration, I refuse to do it again :-) But this shouldn't stop
better alternatives from being created [1] (and taking place of Maven
when ready). My requirements for the new system would be this:
* It should provide all current build and release functionality (Duh!)
* It should sit in a separate branch until it is ready 100%,
* It should support the current module layout
* It should provide a way to publish Maven artifacts
[1] http://incubator.apache.org/learn/rules-for-revolutionaries.html
Andrus