Slashdot Mirror


Apache Maven 1.0 Released

darthcamaro writes "internetnews.com is running a story on the release of Apache Maven 1.0 this week. Maven is a very robust project-management and project comprehension tool that is unparalleled in either open source or proprietary software. 'Maven has a long history of pushing out beta after beta, so this is definitely an important release,' Jason Van Zyl, Maven architect release manager, told internetnews.com. 'For users it means that they will have something reliable now for their production builds.' From some of the comments that Van Zyl makes in the story though, it look like the upcoming 2.0 version will be the real killer app, though 1.0 is certainly nothing to sneeze at either..."

14 of 167 comments (clear)

  1. Link to project by Inominate · · Score: 5, Informative
    Why do stories like this so often leave out a link to the actual project?

    http://maven.apache.org/

    1. Re:Link to project by Anonymous Coward · · Score: 5, Informative

      It's not a project management tool.

      It's a Java programming project management tool.

      There is a huge difference between the two things.

    2. Re:Link to project by legenx · · Score: 5, Informative

      Maven is a command-line tool. The screenshots are not that impressive...:)

      If you know Ant (Java much improved version of make), Maven is like Ant on steroid. Maven handles intra/inter-project dependencies, project site documentation generation, unit testing, code coverage, packaging, deployment, and there's even a plugin to test whether your code conform to the coding standard.

      One of the major strength of Maven is that it manages the various jar (library) dependencies in a seemless way. Multiple subprojects do not need to duplicate the jars that they depend on. You can even throw multiple subprojects into a "reactor" and it'll build them in the correct order based on their dependency graph.

      It's sad that it's for Java only. I wish there's something like Maven for C/C++, or even C#, but so far I don't think I find anything yet.

  2. definition by zogger · · Score: 5, Interesting

    I would imagine there are a lot of people (like me) who had *no idea* what this is or what it is for. Here is the one paragraph definition of it FTA:

    "Maven defines itself as a project-management and project-comprehension tool. Its project object model (POM) controls the development and management of a project. The POM controls builds, document creation, site publication and distribution publication and can be stored in an XML file. Maven also provides a set of tools to enable developers to automatically generate a number of critical items, such as source metrics; mailing, developer and dependency lists; software development process documentation; change logs based directly on source repository; and source cross-references."

    In other words, it looks like a cross between the head cheese coding despot on any development project mailinglist and an automated webmaster thingee.... a management worker bot whatever.. it's a....

    I still don't know what it is :(

    1. Re:definition by poot_rootbeer · · Score: 5, Informative

      I still don't know what it is :(

      Imagine a superset of `ant build` that not only compiles your binaries, but also generates your documentation and install and test everything you need to run your application out-of-the-box in a single step.

  3. Incredibly useful build tool by d-rock · · Score: 5, Informative

    We have started using Maven for in-house development and it really simplifies things. Being able to declare dependencies on libraries, etc, and have Maven go and grab the correct versions during build is cool enough, but all of the reporting and site building tools are really incredible. The PHBs were very impressed with the code analysis reports that it generates, and the CVS annotation of code is very nice for our internal sites. It takes a little getting used to, but if you've used Ant, you're halfway there.

    Derek

    --
    Don't Panic...
  4. Maven Bile by Anonymous Coward · · Score: 5, Informative

    The Bileblog has an alternative view on Maven.

    1. Re:Maven Bile by malloc · · Score: 5, Interesting

      That could win the best-FUD-of-the-year award. Full of scathing remarks, but nary an actual hard fact in sight.

      -Malloc

      --
      ___________________ I want to be free()!
  5. Not the only thing left out: it's for Java only by Anonymous Coward · · Score: 5, Informative

    Sadly, the headline also left out the rather key information that this tool is for Java projects only.

    I was quite looking forward to a revolutionary project management tool ... alas, this one is yet another myopic product of the "Java is the whole universe" generation.

    Java is great ... but there is a larger world out there you know.

  6. Check out JAM for Maven by alphafoo · · Score: 5, Informative
    I started using Maven about a month ago, just to see what all the fuss was about. There is a lot to it, and it can be overwhelming. But there is a good middle ground between roll-your-own-ant and Maven, and it's called Javagen Ant Modules (JAM) and it's here.

    What I got from JAM that is useful to me:

    • dependency management automatically downloads library JARs for me during build.
    • common build.xml file and framework, so all my Maven projects have same basic structure.
    • Reduced learning curve so I could get going without learning everything about Maven all at once.
    • access to lots of cool Maven "plugins" like maven-eclipse that integrate the whole thing into my Eclipse3.0 setup.
  7. Re:Not the only thing left out: it's for Java only by clamatius · · Score: 5, Informative

    It's technically possible but part of the point of the thing is that you don't have to spend forever writing build scripts to get going. So once there's a set of users writing plugins with better support for (e.g.) C# and C++, sure it'll be agnostic.

    Right now it's effectively a Java tool since most of the plugins are for Java (jar, javac, javadoc, junit, etc).

  8. Re:Oh, you for mean for programming projects only by tntguy · · Score: 5, Funny

    This isn't the project you are looking for.

  9. It is a build tool . by Anonymous Coward · · Score: 5, Insightful

    It is a Build Tool, not a "project management tool".

    What it builds are software programs.

    What it was designed for and is good at is building the software called "Apache". The more a software development project looks like the Apache one, the more likly it is a useful tool for that project.

    You want a management tool. This is NOT it.

    You want a nonsoftware project tool. This is NOT it.

    You want a build tool for a research software project, say in AI or written in LISP. This is NOT IT.

    You want a build tool for far flung contributors writting code in Java (or java like language) with all the structural details about the project already known. Bingo!!! This is the tool for you.

  10. Re:Its a love it or hate it project by svetlin · · Score: 5, Informative

    Unfortunately most people seem to hate it.
    Maven mailing list(s) is one of the most active ones, with +50 messages a day. Most articles and comments at ServerSide, IBM DeveloperWorks and elsewhere are quite favorable toward it. Many major projects (e.g. Geronimo) are using it.

    I dont like supposed development aides thats want to tell me how I should organise everything to suit its quirks rather than my preferences.
    Maven follows well established practices (e.g. directory structure) from the Apache Jakarta projects. Accustomed to Ant's freedom, I also was unhappy with some defaults/behaviors initially, but gradually all of them made sense.

    Its really irritating when this demands vast amounts of configuration to achieve
    I interpret this to mean that attempting to implement your quirks in Maven took vast amount of configuration to achieve, and have no objection to that.
    Another massive configuration effort is required when an existing complex and rather quirky Ant build of a large application is migrated to Maven (as it was in my case, I should mention that I wrote also the Ant build ;-)).
    But starting with Maven on a common medium-sized app is relatively easy when using the GenApp plugin.

    requires a scripting language who creator has apologised for creating an abomination
    I agree here. I also do not like the idea of executable XML, of using XML as a programming language. Please note, however, that Jelly is an interface for tags in Maven used to implement plugins. In principle, any mechanism for embedding tags will do (and there is significant work in this direction for v2 AFAIK).

    So, apart from personal taste, Maven is quite a solid production-ready project build and comprehension tool.

    --
    Svetlin