DevZuz CodeAtlas now live

I’m really proud to announce that one of the projects I’ve been working on for the last weeks has finally gone live. DevZuz CodeAtlas will enable you to search for open source components and see their information, relationships, comments, ratings,…

We are launching a private beta for now trying to gather feedback, improve the usability,… I have some invitations to give away for the readers of this weblog, just leave a comment if you are interested.

I’m really convinced that it’s going to be useful for all those developers that are using actively open source and need to be aware of the latest releases or find specific libraries. Enjoy.

Using Spring from Maven (and anything else that can use a repository)

Spring is finally available through Maven repositories for final releases, milestones and snapshots, and they are adding the sources too! Ben Hale has listed the repositories that you need to have into account.

I personally would like to see the milestones in the central repository as it makes life easier for users as many other projects do.

Google Summer of Code 2007

This year I volunteered again to be a mentor in Google
Summer of Code
at Apache. It’s 4500$ for students that develop a summer project.

Choose one of the proposals (or propose yourself) from any open
source project, and apply. I’ve added some proposals about Maven I’m
interested in to the Apache
Software Foundation list of projects
.

Maven 2.0.5 released

Now, time to work in 2.0.6 and 2.1 😉

The Apache Maven team would like to announce the release of Maven 2.0.5.

Maven 2.0.5 is available for download.

Maven
is a software project management and comprehension tool. Based on the
concept of a project object model (POM), Maven can manage a project’s
build, reporting and documentation from a central place.

The core release is independent of the plugins available. Further releases of plugins will be made separately. See Plugin List for more information.

We hope you enjoy using Maven! If you have any questions, please consult:

For news and information, see:

2.0.5 Release Notes

Changes in this release: Issue Tracker Release Notes

Changes that may affect existing builds

  • MNG-2794
    – Maven now behaves in a defined way when matching the nearest
    dependency when two exist at the same depth in the dependency graph, by
    matching the first encountered. Previously, it was undefined. This may
    result in some builds having a different dependency graph, which could
    cause failures if all compilation dependencies are not specified
    completely in the POM. While not currently enforced, projects should
    always list the dependencies it needs to compile, even if they are
    available transitively.
  • MNG-2228
    – The handling of build extensions has changed. This technique causes
    less pollution to the global classloader, allowing them to be used more
    widely for extensions to Maven’s core. This may affect builds that used
    them to expose extra classes to various plugins. While in most
    scenarios these builds will continue to work, in these situations the <dependencies> element of <plugin> should be used instead.

Maven, Eclipse and OSGi

It has been a long time since last entry, lots of things happened
since, I’ll try to post more often… promise!

What I’m working on right now is OSGi and Maven integration. Goal:
to generate automatically OSGi compliant jars from Maven projects and
vice versa, and make the Maven Repository also a OSGi bundle
repository.

You can take a look at the Maven
repository that contains Eclipse OSGi bundles
, with poms
generated from the manifest information and the Felix
Maven bundle plugin
that I’m improving to make everything more
automated and better integrated.

Maven at The Spring Experience

I wasn’t at The
Spring Experience
, but reading other people’s weblogs I decided
to put here some extracts from the conference about Maven.

Here are some quotes:

Ben just did a survey of the room asking who’s using Ant vs. Maven.
Surprisingly, Ant only slightly beats Maven.

Matt Raible in [TSE]
Hop into Real Object Oriented (ROO) with Ben Alex

Jetty is your friend! It allows you to rapidly deploy, it’s
resilient to hot deploy, starts everything in about 2 seconds and
integrates with everything.
Maven is your other friend. It allows you to kick-start a web project
very easily. It also has Jetty integration that allows you to hot
deploy. The Jetty plugin also detects changes and redeploys
automatically. It even creates project files for IDEA and Eclipse.
Now Rob is doing a Maven QuickStart demo. He’s using the
maven-archetype-webapp to create a web application with Maven. He then
added the Jetty Plugin and showed how it’s easy to get started. For
those of you that aren’t aware, there’s also a Tomcat Maven Plugin
that allows you to use Tomcat instead of Jetty. There’s also a debate
ensuing on whether Cargo should have this functionality or whether
these plugins are better. I’m currently leaning towards the plugins
since their easier to setup and configure (and they work too!).
[…]

To debug from your IDE is generally pretty easy. If you setup your
IDE to debug a “Remote Application”, it’ll tell you the
parameters you need to start that application with. For example, to
debug the Maven
Jetty Plugin in IDEA, create a new Remote Application in IDEA (Run ->
Edit Configurations -> Add -> Remote) and then copy the command
line arguments (listed below as well) into your MAVEN_OPTS
environment variable.

-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005
After doing this, you should be able to restart Jetty and
set breakpoints in your IDE.

Matt Raible in [TSE]
Rapid Web Application Development with Rob Harrop

I went to Matt’s talk on AppFuse. I agree with him moving to Maven
2
. Matt also posses a very high EQ. It was good seeing Matt
again. It seems Maven
2
snuck its way into several talks not just Matt’s

[…]

My favorite
comment was from one guy who said he preferred the 50,000 line
AppFuse 1 Ant script to the direction in Appfuse 2 with Maven
with its small XML file. Hey buddy! Have another beer! Perhaps you
should not speak your mind while drinking (or writing blogs on
limited sleep).

Rick Hightower in Random
thoughts about my Spring Experience and Predictions for 2007

Using Selenium and Maven

There were some questions
in the mailing list
and Matt
Raible blog
about using Selenium
with Maven 2.

These are the available solutions:

Hopefully the two plugins will merge and we have better Selenium
support

Maven 1 central repository moved

If you are still using Maven 1 you may have found that the repository is not working and Maven is unable to download new dependencies. The reason is that the ibiblio guys have moved the repo to another machine and Maven 1.0.x can’t handle redirects across different host names.

The workaround is to use the mirror configuration until ibiblio fixes the problem. Add to yor project.properties

maven.repo.remote=http://mirrors.ibiblio.org/pub/mirrors/maven

Although you should probably be using Maven 2 😉

Update! If you want to point to the main repo you should use the following, although it’s always a good idea to use a mirror

maven.repo.remote=http://repo1.maven.org/maven