Affects Version/s: 2.0-beta-1
Fix Version/s: 2.0-beta-1
Environment:Windows XP, Cygwin
The attached files set the scene:
- test-repo.zip - expand this into the root context of a local web server on 127.0.0.1:8080 for a test repo
- projects.zip - expand this for the projects
- settings.xml - the ~/.m2/settings.xml file
The scenario is as follows:
- test-repo contains a single artifact C
- project B depends on C
- project A depends on B & defines test-repo
- settings.xml also defines test-repo
The build process is:
- m2 install B (downloads C, installs B ok)
- m2 install A (finds B and C in local repo, installs A ok)
Now the problem is if C is then deleted the second step fails - i.e. m2 only looks in the central repo for C and not the custom test-repo, even though test-repo is defined in both A's POM and settings.xml.
This didn't happen in 2.0-alpha-3 - is this intentional?
- Time Spent:
- Simply aggregating remote repositories down the transitivity line...local project repositories have precedence over those of the dependencies, and so on. This ensures that locally defined repositories can host artifacts that would otherwise be resolved from the central repository, for example. Super-POM repositories will only be appended to the end, to ensure that any other repository has the first chance to resolve it.