Hi,
I wanted to bring this up before we go too far down the rabbit hole
WRT "shading" plexus-utils in the new releases of maven (2.1.x).
Right now, there are some mojos (eclipse:eclipse being one of them)
that extract information from
project.build.plugins.plugin.configuration. When these mojos try to
cast that configuration object as an Xpp3Dom (admittedly, this is a
*bad* thing to make them do, but otherwise they're left with a
useless java.lang.Object instance), they come up with a
ClassCastException. The reason is that the Xpp3Dom they're using
isn't loaded from the same place as the one used by maven when the
POM is read.
The way I see it, we have only a very few options here. We need to
hide the version of plexus-utils used in Maven, so plugins can make
use of new features in subsequent p-u releases. However, without
reverting to a javax.xml DOM, we're going to have a CCE problem when
we do this and plugins try to access raw configuration info. Even if
we did go to a DOM implementation for the configuration, it will
still leave plenty of plugins in the lurch.
I'm not happy with continuing to filter plexus-utils out of plugin
dependency sets (as 2.0.x does). So, what else can we do to solve
this issue?
-john
---
John Casey
Committer and PMC Member, Apache Maven
mail: jdcasey at commonjava dot org
blog: http://www.ejlife.net/blogs/john