Details
-
Type:
Bug
-
Status:
Closed
-
Priority:
Major
-
Resolution: Fixed
-
Affects Version/s: 2.0.9, 2.1.0-M1
-
Fix Version/s: 3.0-alpha-3
-
Component/s: Settings
-
Labels:None
-
Complexity:Intermediate
-
Number of attachments :
Description
There's currently no way to plugin in new toolchains without placing them in M2_HOME/lib. For wagons to be available in extensions, the extension manager explicitly registers them - so I propose to do the same in 2.1.0-M2 for toolchains, and only support the Java toolchains in 2.0.9.
Issue Links
- is duplicated by
-
MNG-3429
Toolchain classes not being picked up in uber jar
-
- is related to
-
NMAVEN-147
DotnetToolchain Improvement, plus dotnet toolchain manager
-
As I documented here:
http://docs.codehaus.org/display/MAVEN/Maven+2.1+Plugin+and+Extension+Loading+Design
The extension-loading mechanism in maven 2.x is horrible, and prone to all sorts of weird behavioral changes depending on things like the number of artifacts in the extension's transitive dependency closure. IMO it needs to be replaced with something sensible. If we don't take the time to fix this mess, it's just going to extend the confusion surrounding extensions (which are problematic for a lot of users I've talked to) into the realm of toolchains as well.
I'm definitely -1 for patching the extension-loading code to support toolchains the same way wagons are supported now.