I have absolutely no idea about Maven. What are the advantages?


Quoting Maven's site:

"Maven is a Java project management and project comprehension tool. Maven is based on the concept of a project object model (POM) in that all the artifacts produced by Maven are a result of consulting a well defined model for your project. Builds, documentation, source metrics, source cross-references and a countless number of reports are all controlled by your POM"

In JaxMe we've got a project with 4(5?) subprojects: api, xs, js and pm (and jaxme core?). These are the "artifacts" that make up the project. I would consider jaxme core to be the main project itself (I am not sure about this and it is why I put a question mark).

The main advantages I see are:
- You forget about dependencies. Your scm will no longer include jars as these would go in a repository. When using maven there are 2 types of repository: local so you don't have to go to the internet all the time and remote (usually http://www.ibiblio.org/maven). Take a look there.
- You can totally automate the build process with quite a few plugins that are out there: eg: checkout the project, make a distribution, tag a release, upload to the central repository... You can do this with ant, but you need to maintain scripts. If needed, maven can use an ant task as well.
- Your (multiproject) site gets automatically generated (no need to configure forrest) with quite a lot of reports (simian, checkstyle, metrics, xref...) from the Project Object Model. This would give us a good insight of the project.


The maven contributions we need that I talked about:

- Use velocity in user supplied xdocs (so we can keep all docs almost as is). This should be ready soon.
- Tabbed browsing for multiprojects. This will probably take some time as to do it nicely, some changes (already proposed) must go in the POM.


When i'm done with the mavenizing process, I'll give you access to a cvs repository so you can check it out.

Regards,

Nacho


PD: I accidentally made this mail private...





---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to