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

Validate/Download SNAPSHOT dependencies once



    • Improvement
    • Status: Reopened
    • Major
    • Resolution: Unresolved
    • None
    • None
    • Dependencies
    • None


      Building an unreleased multi-module project (30-40 modules) that depends on various other unreleased modules puts significant pressure on the Maven Repository (a local Nexus instance), and artifact resolution could slow down the build 2x-3x.

      I do acknowledge that it is the job of the repository to cache and serve those responses fast, and for some reason, sometimes it slows down without an apparent reason.

      However, the whole build process will be faster if Maven validates a SNAPSHOT once for multi-module (when the dependency is reached the first time) and then use that version. Even if Maven Repository is relative fast, there is still network traffic done. Outside the fact that it should not be done, it might also introduce flaky behaviors:

      • one module downloads a version of artifact A, works with it, and everything is fine
      • 10 minutes later, another module needs artifact A and gets a newer version, which has some issues, and various (test) failures will be raised

      For consistency, on a multi-module build, all modules should see the same version of a SNAPSHOT artifact. It will be faster, and it will be consistent (which is very important).






            cstamas Tamas Cservenak
            adrian.tarau Adrian Tarau
            0 Vote for this issue
            5 Start watching this issue