Hi,

Video with 5 Maven dependency puzzlers - can you answer all 5 correctly? :)
http://parleys.com/play/5148922b0364bc17fc56ca05
(they just made the video free)


*How can maven prevent these unwelcome surprises?*
Watch the video first for context.
Here are some proposals (some of which might be worked on already).


Question 1: Different groupId
Support metadata in the repository to state that
- the groupId org.javassist conflicts with the groupId javassist
- the groupId:artifactId org.drools.planner:drools-planner-core conflicts with org.optaplanner:optaplanner-core - the artifactId foo-beforeSplit conflicts with foo-afterSplit-part1 and foo-afterSplit-part2 - the fat jar artifactId weld-se conflicts with the jar weld-se-core (which contents it duplicates)

Note: the currently solution "a relocation file" has 2 issues (IIRC):
- works only 1 way (IIRC)
- needs to be created for every version (IIRC)


Question 3: Conflict nephews
and Question 4: Conflicting cousins
Support pluggable conflict resolution.
Out-of-the-box, make it easy to switch
  from "nearest" (default due to backwards compatibility)
  to "lexicographic highest version"

Question 5: Child with dependencyManagement
That's a bug.


With kind regards,
Geoffrey De Smet


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to