Mod4j: Modeling for Java using Domain Specific Languages

Find a solution for the Eclipse plug-in - Maven gap

Details

  • Type: Improvement Improvement
  • Status: Closed Closed
  • Priority: Major Major
  • Resolution: Fixed
  • Affects Version/s: None
  • Fix Version/s: 1.1.0
  • Component/s: None
  • Labels:
    None
  • Number of attachments :
    0

Description

One of the really nice features of PDE is its ability to do self-hosting of plugins under development. Essentially, PDE can launch a second instance of your development environment that also contains the plugin(s) under development. This behavior makes debug and testing very easy, but requires that the plugin projects are laid out exactly the way the plugin will be packaged when released.
The challenge here is that Maven 2, by default, expects everything to be neatly tucked away under the src/main/resources directory. If we stuck all the plugin's icons and images along with the plugin.xml and plugin.properties files in that directory, Maven 2 would correctly package the plugin for release but PDE wouldn't be able to launch it correctly, making debugging the plugin virtually impossible.
Maven 2 must have all the dependencies spelled out in the POM for it to resolve and manage them. In contrast, Eclipse plugins must have dependencies clearly defined in their manifest file. This is a major point of conflict, but while Maven 2 can be taught otherwise, Eclipse will not budge on this issue. All dependencies must exist in the manifest and they are resolved from there during development as well as in the runtime.

From: http://www.eclipse.org/articles/article.php?file=Article-Eclipse-and-Maven2/index.html
See also this link for a candidate solution.

Johan Vogelzang [07/jul/08 12:34 PM]
Found an other article about this issue : http://www.buggybrain.com/2007/10/building-eclipse-plugins-with-maven-2.html
It shows also that its not a easy issue to overcome the gap...

Johan Vogelzang [08/jul/08 04:07 PM]
For this issue the Maven plug-ins i experimented with is: maven-psteclipse-plugin from Princeton Softech, Inc
Unfortunately the plug-in did not work out-of-the box. First I had to fix some issues for it to operate as needed.
After a long struggle and experimenting with the maven-psteclipse-plugin my conclusion is to leave it for this moment.

  • Support for the plug-in is unkown, so we should probably maintain it ourselfs.
  • The plug-in generates scripts for install and deploy of all Eclipse plugins as Maven artifacts to a central or local Maven repository. But does that completely for all plug-ins in your current Eclipse installation. I do not know how to use this in combination of artifacts that already are available in central repos (such as the oaw and eclipse dependencies).
  • The PomModifier goal of the plug-in did not came up with the right dependencie versions.

Our primary concern is for projects that use Mod4j to get a build done outside Eclipse. This is possible by adding a pom.xml to each of our Eclipse plug-ins. The disadvantage is that we now need to maintain the depencies of the plug-ins in two configurations. For now i think this is the best solution.
Maybe in the future we must take another look at the maven-psteclipse-plugin.

Jos Warmer [25/aug/08 07:57 PM]
Removed from release 1.0-beta and moved to future release.
This seems to be out of scope for Mod4j, maybe we should drom this issue.

Jos Warmer [01/sep/08 04:42 PM]
Don't we have a working solution at this moment? If so, should be marked as resolved.

Activity

Hide
Jos Warmer added a comment -

Has already been solved long ago using the maven plugin

Show
Jos Warmer added a comment - Has already been solved long ago using the maven plugin

People

Vote (0)
Watch (0)

Dates

  • Created:
    Updated:
    Resolved: