Uploaded image for project: 'Maven'
  1. Maven
  2. MNG-5971

Imported dependencies should be available to inheritance processing

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Reopened
    • Trivial
    • Resolution: Unresolved
    • 3.3.3
    • 4.0.x-candidate
    • Dependencies
    • None

    Description

      When a project extends from a parent with a dependencyManagement section, it is not always possible to properly override (and align) the version to use for a group of dependencies.

      We typically use Bill Of Materials to gather a group of modules and make sure their versions are consistent.

      The following project demonstrates the issue: https://github.com/snicoll-scratches/maven-dependency-management

      The first commit is a working use case where the parent uses a bom with version A and we use the same bom with version B in the child. Version B is used as expected.

      The second commit demonstrates the faulty scenario. Rather than using a bom in the parent, we use a direct dependency (provided by that bom). We still use the bom with a different version. In that case all the dependencies but the one provided by the parent are overridden (leading to mixed versions for the dependencies provided by the BOM).

      It looks like the distance is still used to compute the version while the graph of dependencies should be flatten at each step for a proper override.

      Thoughts? Thanks!

      Attachments

        1. bom-cloud.zip
          50 kB
          Stephane Nicoll

        Issue Links

          Activity

            People

              Unassigned Unassigned
              snicoll Stephane Nicoll
              Votes:
              6 Vote for this issue
              Watchers:
              17 Start watching this issue

              Dates

                Created:
                Updated: