Maven and ABCL
Robert Goldman
rpgoldman at sift.net
Fri Apr 7 21:48:38 UTC 2017
On 4/7/17 Apr 7 -4:06 PM, Alan Ruttenberg wrote:
>
> On Fri, Apr 7, 2017 at 4:27 PM, Alan Ruttenberg
> <alanruttenberg at gmail.com <mailto:alanruttenberg at gmail.com>> wrote:
>
> It doesn't address what to do about potentially conflicting maven
> artifacts loaded by distinct asdf systems.
>
>
> Here's one approach.
>
> :managed-dependencies are specifications of versions that should take
> precedence over versions that are in the transitive closure of some
> dependency.
>
> As each asdf system which has used maven dependencies computes its set
> of satisfying dependencies, the particular versions chosen become
> default managed-dependencies for subsequent systems. If two managed
> dependencies conflict (e.g. I include a version 1.1 as managed
> dependency in system A, which is loaded. Subsequently system B specifies
> version 1.2 as a managed dependency, then an error is signaled.
> Many times this can be fixed by modifying the specification of the
> managed dependency to be looser, and changing the order of loaded systems.
>
> I think moving this into the planning phase is probably the right thing.
> I'm just not familiar enough with asdf's model to whip up a solution.
> Hopefully asdf's planning runs over all systems that are depended on
> before loading anything, in which case I think this will be a viable
> solution, module the case of conflicting managed dependencies, or
> dependency hell you would arrive at if you were using maven alone.
Yes, ASDF has a "plan, then execute" model of operation, so it won't
load anything until inspecting all the systems involved.
More information about the armedbear-devel
mailing list