Tales about Aviation, Coaching, Farming, Software Development

Maven2, Eclipse Callisto with WTP and Subclipse working together

A dream has come true. With the Eclipse Callisto release the Web Tools Project (WTP) finally works as one expected it to work. It's the most comfortable environment for developing web application that I've seen so far. The only drawback has been the lack of dependency management for the ever growing number of additional jar files every serious web application requires.

When one talks about dependency management the answer is usually Maven. Maven is a great tool, but apparently it is mainly used by fans of the command line, who don't use any kind of IDE frequently, or as a build tool on the continuous integration server where CruiseControl or Luntbuild call Maven to perform the build.

But what when you literally live within Eclipse? There is the M2Eclipse plugin that works very well, but it still lacks direct support of WTP. There is a JIRA entry though that reports about the problem and at the end you will find a very valuable hint to another plugin which links the Maven2 Dependencies classpath container provided by M2Eclipse to the Web App Libraries container provided by WTP.

This plugin is provided by Adam Kruszewski and is called LibCopy.

If you happen to use it with projects stored in a Subversion repository you probably run into the same problem as did I. Version 1.0.x of the Subclipse plugin doesn't support linked resources. To solve that you have to upgrade to the version 1.1.x branch for Eclipse Callisto. I got Subclipse 1.1.4 by doing so and now I can use Eclipse and Maven2 for my web application projects in the most comfortable way.