On Dec 26, 2008, at 1:55 PM, Les Hazlewood wrote:

I don't like like Maven - great concepts, poor execution IMO.  There
are a few other developers on this list that feel the same way and can
attribute to the pain it causes due to its inflexibility.  I know
Allan has attested a number of times that when at his previous company
he had to make customizations, they wrote Maven plugins.  But he said
that the plugins were difficult to maintain, sometimes broke after
Maven upgrades, and often required deep knowledge of Maven's inner
workings to write correctly.  Allan, please correct me if I've
misquoted you.

Based on Allan's comments and my own exposure to Maven as well as
Jeremy's input over time, I just prefer not to go down a road that
might cause problems later.  I want something that in concept works
like Maven, but doesn't have the stigma of being difficult to deal
with if you need to do something non-standard.  Allan's and my
experiences only further solidified that opinion.

I've mentioned this before and I'm not sure anyone answered. Allan's experiences are not relevant to this project. More specifically his situation is not the same as the project's. For example, will not need to write plugins for a legacy build environment. I, personally, have had plenty of experience writing maven plugins and have not had the drama that a few people claim to have.

Again, not sure that his all relevant here.

Gradle sits on top of ant and ivy and adds some Maven features without
getting in your way.  It is the best of all 3 (IMO) because it wraps
them and enables the power of each without restricting you  Also,
.gradle build scripts are just Groovy files, but with a bunch of
domain-specific Gradle closures, which allows us to do anything Groovy
can do.  Ant and Ivy are first class citizens, allowing native usage
if you want to.

Gradle's default conventions are very similar (if not identical) to
Maven, but it took me all of 4 lines of Groovy code to make overrides
that match the directory structure of an existing large project that
didn't (thank God) follow Maven's default directory layout.  It was
painless.

So with Gradle (based on my admittedly limited experience), you get
build-by-convention, without any pain when it comes to customization.
It was a very pleasant experience.

Hmm.  Build by convention, where did I hear that term before?

Concerning buildr - I haven't looked at or used it, so I can't say yay
or nay to it.  At first glance, it appears to be ruby-based.  I can't
say enough about using a proper scripting language to perform
customization or conditional logic - SO much easier than XML.  But,
given my choice, I'd gladly stick with Groovy, as it is so like Java,
it took almost no time to learn.  I don't use Ruby for anything else
in my personal or professional projects, so I wouldn't want to bother
with it just for a build system.  Groovy is the way to go for existing
Java developers IMO.

So, my recommendation was just based on the experience that I had at
work this week, and given that it was so pleasant, thought it would be
nice to have the same feeling in JSecurity :)

IMO, with gradle being at 0.5 it's a bit premature to jump on that band wagon. I think having to code in Groovy to accomplish the trivial things we need to do on this project is, frankly, silly.

One of the arguments I have heard for the the use of Ant is to keep all our source code into a single directory. I am not crazy with the directory structure we currently have. It strikes me as organized on an ad hoc basis. For example we jam the web and core source code in one directory and have Ant extract the bits that are needed. Not only is there a lack of transparency as to what is going on I'm wondering if there can be an accidental circularity in their dependencies.

So the web and core code is in one source directory but there echache, etc., bits in a separate directory called support. Ecache seems to be stitched in at the last second into the core jar.

IMO, this all strikes me as very disorganized. I could, of course, have misread this state of affairs.


Regards,
Alan

On Fri, Dec 26, 2008 at 4:18 PM, Emmanuel Lecharny <[email protected] > wrote:
Les Hazlewood wrote:

Hi team,


<snip/>

What do you guys think of using Gradle to build JSecurity?


JSecurity is 16 Kslocs atm, and it's one single module. I don't see how it
can be a burden to move the build to Maven 2... Anyway.

We have a working ant+ivy build, why do we have to switch to something else ? Why gradle, instead of system like maven or buildr, for which we have some
fellow apachers ready to give a hand ?


--
--
cordialement, regards,
Emmanuel Lécharny
www.iktek.com
directory.apache.org




Reply via email to