incubator-flex-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Left Right <>
Subject Re: Ant vs. Maven vs. Gradle
Date Tue, 28 Feb 2012 10:23:17 GMT
Setting a Maven repository is something you cannot ask from a user with no
Maven experience, but installing Ant or Python is a matter of one line they
need to type into console to make it happen. If we expect that people other
then those on the mailing list build SDK and submit patches, I think, we
should strive for a simpler system.

Ant has been historically used alongside Flex, thus there is a good chance
that an Ant build will not be a burden for anyone who wants to build the
SDK on their own. Python (scons) is a good building tool, much more
versatile and feature-rich then Ant or Maven, but it's not been used before
with Flex projects. But if we consider a complete remake, then scons is in
every way superior to Maven...
Other disadvantages of Maven are those that it's not well-supported
anywhere except Intellij, (Eclipse has quite poor support, JDEE, frankly,
has better Maven support, FD has no support at all). Python, on the other
hand is supported in a huge variety of IDEs.
There are certain advantages of using Maven. Those would be sort of
discipline in the project organization and a set of rules imposed on the
building process by mandatory goals (i.e. mandatory steps that the building
script has to enter - if you aren't familiar with the subject). Another
positive side of Maven is that it is used in enterprise sector to simplify
the building process.
But it only simplifies things by offloading the build management to a
specially trained person, who's sole purpose is to take care of only that.
If you don't have such special trained person at your disposal, it will
actually duplicate the amount of work for you.
Straight forward disadvantages of Maven - it's an ad hoc created XML
dialect "language" (just as Ant is), which is impossible to debug (you
can't even log messages during the build, it's basically a mystery what's
going on inside). It is overly verbose both in the scripts themselves (pom
files) and in the output it produces as the result of the build, where
verbosity isn't helping understanding. It is very rigid in structure and
very difficult to extend. It is written in Java, so all inherent Java
problems apply: long start-up times, poor command line integration,
complicated memory management, extremely high memory consumption.

With respect to building AS3 sources in particular, there is no "Maven-way"
today that would, even theoretically, do it. It would require someone to
write a plugin for Maven (or rewrite / extend an existing one) to allow to
at least recreate what is accomplished in the Ant-based build. Which, to
me, would look like a waste of time.

In my opinion, it's like asking to invest a million dollar with the promise
oh higher revenues. There are few, who can afford that and might enjoy that
higher revenue, but there are many of those who cannot afford such
investment, and would be happy with investing hundred bucks for slightly
lower revenue :)



  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message