maven-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jason van Zyl <>
Subject Re: [Maven 4.0.0] Removing ability for plugins to dynamically inject dependencies
Date Thu, 10 Apr 2014 13:36:41 GMT
I realize folks are busy, I'll just run with this given I think we all agree immutable classpaths
are better and fiddly magic in the core is bad. I'm going to remove the capability to dynamically
fiddle with the project classpath and the IT for MNG-4363 will be omitted from the run for
Maven 4.0.0.

On Apr 6, 2014, at 9:55 AM, Jason van Zyl <> wrote:

> Hi,
> I started making of list of things I'd like to remove in Maven 4.0.0, but I would like
to start getting some agreement on what we can yank and this is the first concrete request.
I would like to remove the ability for plugins to magically inject dependencies. Plugins can
either declare their dependencies or instruct users to add dependencies to the plugins in
their POMs. This weird logic for plugins to add dependencies dynamically is the cause of some
extremely convoluted logic in the resolution code and I want to remove it.
> The original issue is here:
> I encountered this when trying to hoist all the resolution logic into once place so that
from our Aether provider resolution as it is done in the core can be done everywhere. Right
now we have plugins like the assembly plugin, WAR plugin, dependency plugin that all do their
own weird, inconsistent thing and when I tried to put it all in one place so that it can be
analyzed, optimized and then executed this issue cropped up. We never should have allowed
this in the first place but carried it over from 2.x for compatibilities sake. This might
affect the code coverage tools but we can find a cleaner way. This logic is totally bizarro
and needs to go.
> If everyone agrees we can start systematically documenting what has been removed, as
we have lost track of this accurately in the past. I'd like to make a 4.x branch in 4 weeks
or so and this will be one of the first things I'd like to cut. It will be one of those radical
simplifications that will start allowing people to get a better understanding of the core
as I can put the resolution logic in one place as it is currently in many.
> Thanks,
> Jason
> ----------------------------------------------------------
> Jason van Zyl
> Founder,  Apache Maven
> ---------------------------------------------------------
> We all have problems. How we deal with them is a measure of our worth.
> -- Unknown



Jason van Zyl
Founder,  Apache Maven

happiness is like a butterfly: the more you chase it, the more it will
elude you, but if you turn your attention to other things, it will come
and sit softly on your shoulder ...

-- Thoreau 

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message