Uploaded image for project: 'Maven Enforcer Plugin'
  1. Maven Enforcer Plugin
  2. MENFORCER-332

Performance regression in bannedDependencies rule

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Incomplete
    • Affects Version/s: 1.3, 1.4
    • Fix Version/s: None
    • Component/s: Standard Rules
    • Labels:
      None

      Description

      Since adding maven-dependency-tree as a dependency, bannedDependencies has had a significant performance regression when it comes to building the dependency tree to check. In a multi-module project with more than one bannedDependencies rule defined, build times are significantly slower: one project using over 100 modules and 20 bannedDependencies rules takes 10 mins just to run maven validate, while using maven-enforcer-plugin 1.1.1 the build time is only 1 min.

      The rule should be updated to cache the dependency tree for a project, and to reuse it across rules for the same project. To support parallel builds correctly, the cache will also have to support caching more than one dependency tree at a time.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                rfscholte Robert Scholte
                Reporter:
                richarda Richard Atkins
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:

                  Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 10m
                  10m