The Source for Java Technology Collaboration
User: Password:



Andreas Schaefer

Andreas Schaefer's Blog

Maven: 'I love you' afterall

Posted by schaefa on June 15, 2004 at 02:51 PM | Comments (6)

Correction:

At the bottom of my weblog I complained that I cannot redistribute JAXB with my project forcing others to download and install JWSP. Ryan Shoemaker from JavaSoft told me that this is not correct and an updated FAQ entry about this is made available. I am glad to hear this and hope that JAXB can be found on the Maven repository soon. I hope that this confusion helped to clarify this important issue and I want to thank Ryan for his valuable feedback.


The first time I saw Maven I did not like it at all. It seemed to be a huge, complex and unfinished project. But somehow I could convince myself to try it out in my very own JDoppio project. So I checked out the Maven website documentation and wrote the initial project descriptor. Now I just had to write the code, jUnit tests and was ready to run the project. So instead of writing an Ant script taking me roughly around one hour I wrote the project descriptor in ten minutes without loosing any features.

Then I decided to split up the project into multiple sub projects and found some existing projects using Maven's multi-project tool like Turbine. This took a little bit longer to understand the multi-project but to write the sub projects was quick and easy as before. After that I needed to import sub projects into other sub projects which was easy using the local repository and the dependencies in the project descriptor. Using JAXB made it mandatory to add my own archives to the local repository. Finally using properties in the project descriptor allowed me to add certain archives to a class path or to copy them into the test environment to run the JDoppio server standalone. So every requirements by my project could be resolved by Maven very elegant without making it complex.

The biggest challenge to me was to find help on problems I wanted to solve with Maven. The first stop was their website but it only works for simple questions. But then I discovered that looking into Maven plug ins and their project descriptors and Jelly scripts provided me with a wealth of information and every time I look into a different plug in I find new ways to solve a problem. It also helps to look into other open-source projects using Maven and their project and extension (maven.xml) descriptors to see how they solved a problem.

The only problem I found so far was some buggy plug ins which I either did not care about or got the newest version from CVS to solve an issue. Otherwise I am convinced that using Maven is a real time saver and if you flexible it can be used in most projects I can think off.

Have fun – Andy

P.S.: Can someone explain to me why Sun does not allow JAXB to be distributed freely and I have to bug all other developers interested in my project to download and install Java Web Services Developer Package to just get this archives? As if only web service developer would be the only ones interested in JAXB. Sometimes I am really wondering why Sun cannot stop making our lives miserable even thought they are using open-source software in their distribution as well. So Scott, please could you prevent JAXB from becoming the next Java on Linux issue where it took Sun years until they went along with the developer community.


Bookmark blog post: del.icio.us del.icio.us Digg Digg DZone DZone Furl Furl Reddit Reddit
Comments
Comments are listed in date ascending order (oldest first) | Post Comment

  • JAXP isn't the only one
    It would be nice if Javamail and JAF could be distributed as well.

    Posted by: ehauser on June 16, 2004 at 07:03 AM

  • JAXP isn't the only one
    Those are part of J2EE which can be distributed...

    Posted by: jwenting on June 16, 2004 at 07:19 AM

  • Maven: 'I'm still a little cautious but am up for an ilicit affair'
    hi,

    its interesting to hear someone say this - i've heard a few people say that they have tried and were put off maven because it is too "heavyweight"

    I am particularly suspicious because it seems like an opaque do-everything behemoth? I have enough trouble coping with using both Eclipse and Ant in a compatible way - ie ensuring that Eclipse is an optional extra and that projects still build without it.

    i wouldn't like to have my project dependent on maven since I don't know enough about it, and i'm scared of giving it too much of my time since it might prove not to be to my liking after all..

    the honeytrap that is likely to get me in the end though is the automatic website generation..

    Posted by: asjf on June 17, 2004 at 08:23 AM

  • You can get JAXB directly at Java.Net
    The main reason for the bundling is that we are testing all the technologies in the pack working together. We used to deliver separate downloads but all sorts of inconsistencies would creep in. The integrated bundles have forced us to detect and correct those issues.

    You can always download the full JWSDP and only extract what you want.

    Or, you can download the early access builds from Java.net: there are JAXB and JAX-RPC weekly builds available as part of the
    jwsdp subcommunity.

    - eduard/o

    Posted by: pelegri on June 17, 2004 at 08:59 AM

  • Maven: 'I'm still a little cautious but am up for an ilicit affair'
    I have enough trouble coping with using both Eclipse and Ant in a compatible way

    Maven automatizes it: you just run 'maven eclipse' and it generates the .project and .classpath from the POM!

    Posted by: felipeal on June 17, 2004 at 08:19 PM

  • JAXB License and Redistribution Terms
    JAXB (and many of the other components shipping with the JWSDP) can be freely redistributed with your applications and products. These licensing changes are the direct result of considering feedback from the JWSDP developer community - we really do listen and take feedback from the community seriously.

    Please refer to the following FAQ entires for more information about the licensing and redistribution terms for JAXB:


    Why is JAXB delivered as part of the Java Web Services Developer Pack (JWSDP)?
    Can I redistribute JAXB with my application? What are the licensing terms?


    --Ryan

    Posted by: ryan_shoemaker on June 18, 2004 at 09:42 AM





Powered by
Movable Type 3.01D
 Feed java.net RSS Feeds