[jsword-devel] Doesn't Maven offer greater power and flexability than Ant?

trent.jsword at trentonadams.ca trent.jsword at trentonadams.ca
Sat Feb 20 20:02:46 MST 2010


Hi,

Yes, maven is a lot more flexible.  In some ways, it's simpler than ant, but in other ways, it's more complicated.  But, the flexibility is very much worth it, IMO.  Some call it a bad implementation of a good idea.  I wish they had re-factored ant personally.  But, I guess the whole inheritable project builds was quite foreign to ant, so perhaps a split was needed, I'm not sure.  POM = Project Object Model.  It allows inheritance from the bottom most project, up to the subprojects.  i.e. you can put all the common stuff in the base pom.xml, and each sub project can inherit from that, and add additional items that it needs, or exclude items that the base has.  This makes it a very flexible system.

It also has profile support, where you can pick and choose various options by making a profile, and mentioning the profile on the command line.  For example, you might not want tests run by default, so you make a profile for them instead.  Or maybe you only want tests run automatically during packaging time; again, a profile could do that.  Or, perhaps you have a servlet based web application with an RMI backend, but you want to run it in different ways.  One way may be to package the RMI server right into the web application, during development, but separate it for production builds.  Things like that can be done via profiles.

There is a bit of a learning curve involved.  But, I find documenting the commands that a person needs to run to do various things, gets them up to speed faster, because they can still build, and can learn it as they go.  Because of the learning curve, I would recommend keeping ant for at least a few months; but, that does depend on the developers too.  Who knows, they might all learn maven quickly, and not want ant anymore.

Some developers may be frustrated initially, so you should keep that in mind.  I was very frustrated when I started on maven, but I couldn't let it go because of the flexibility it gave me.  Worst case, the ant build could stick around forever, right beside maven.  I would recommend maven for doing production builds.  That way you can push stuff up to the maven repository, so that everything is publicly available; rather than having everyone configure a custom crosswire repository.

----- "avolunteer DrStovallFoundation" <pythondrs at yahoo.com> wrote:

> From: "avolunteer DrStovallFoundation" <pythondrs at yahoo.com>
> To: jsword-devel at crosswire.org
> Sent: Saturday, February 20, 2010 8:46:05 PM GMT -06:00 US/Canada Central
> Subject: [jsword-devel] Doesn't Maven offer greater power and flexability than Ant?
>
> Doesn't Maven offer greater power and flexability than Ant?
> 
> > Date: Sat, 20 Feb 2010 16:12:38 -0700 (MST)
> > From: "Trenton D. Adams" <trent.jsword at trentonadams.ca>
> > Subject: [jsword-devel] maven vs ant
> > To: jsword-devel at crosswire.org
> > Message-ID:
> > <1686674510.341266707558568.JavaMail.root at zimbra>
> > Content-Type: text/plain; charset=utf-8
> > 
> > Hi Guys,
> > 
> > Is there a particular reason that the jsword project is
> > still using ant?  Is it just a time commitment issue,
> > preference issue, etc?
> > 
> > I'm fairly experienced in maven, and was thinking of making
> > poms for it.  This would allow other developers using
> > maven to easily grab just the stuff they want from the
> > jsword project, via the maven repositories.
> > 
> > It appears that most of the directory structures are maven
> > compatible.  So, if all goes well, ant could remain in
> > place, as is, which would provide for an easier transition
> > period for other developers.
> > 
> > Thanks.
> > 
> > 
> > 
> > ------------------------------
> > 
> > _______________________________________________
> > jsword-devel mailing list
> > jsword-devel at crosswire.org
> > http://www.crosswire.org/mailman/listinfo/jsword-devel
> > 
> > 
> > End of jsword-devel Digest, Vol 69, Issue 7
> > *******************************************
> > 
> 
> 
>       
> 
> _______________________________________________
> jsword-devel mailing list
> jsword-devel at crosswire.org
> http://www.crosswire.org/mailman/listinfo/jsword-devel



More information about the jsword-devel mailing list