Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>Have you read <a href="http://www.sonatype.com/books/maven-book/reference/introduction.html" rel="noreferrer">chapter 1</a> of "Maven, the definitive guide"? In particular, <a href="http://www.sonatype.com/books/maven-book/reference/installation-sect-compare-ant-maven.html" rel="noreferrer">1.7 Comparing Maven with Ant</a> has an interesting discussion.</p> <p>I agree with the other answers that advise caution. Maven has strong points, but nothing that can't be done by an Ant build process:</p> <ul> <li><p>dependency management: Ant has the <a href="http://ant.apache.org/ivy/" rel="noreferrer">Ivy</a> subproject, which can interact with Maven repositories.</p></li> <li><p>convention over configuration: you can also do that with Ant, it's just a matter of establishing the rules and enforcing them.</p></li> <li><p>build lifecycle: same as above, you can enforce a convention over the tasks exposed by each build.</p></li> <li><p>build logic reuse (Maven plugins): you can also achieve that in Ant with <code>macrodef</code>s and task libraries.</p></li> </ul> <p>The thing is, with Maven you get these features out-of-the-box, while with Ant you need a rock-solid build, a very strict set of rules and a way to enforce them (for instance, make sure that everyone follows the conventions when they create a new subproject, that they reuse the existing blocks instead of doing everything from scratch, etc.).</p> <p>Personally, I would see how well the existing process addresses the issues above: how are dependencies managed, is there a central repository? Are the project structures uniform (when I checkout a project I don't know, how long does it take to figure out how to build it)? Is there some form of build logic reuse, or does each project reinvent the wheel? <em>Which of these features are needed?</em></p> <p>Then I would try to balance the cost of adding the missing features to the existing Ant script, against the cost of migrating to Maven (if you don't know Maven, that also includes the cost of <a href="http://www.sonatype.com/books/maven-book/reference/public-book.html" rel="noreferrer">learning it</a>).</p> <p>In any case, I suggest you build a small Maven prototype (5 to 10 projects) illustrating the common cases in your build. You can test a lot of Maven's features with dummy projects containing little java logic (use the <a href="http://www.sonatype.com/books/maven-book/reference/archetypes.html" rel="noreferrer">archetype plugin</a> to generate them).</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
    3. VO
      singulars
      1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload