The m-p-p depends on m-p-tools-ant and m-p-tools-beanshell as runtime/optional, and the way DownloadMojo resolves every artifact causes that OptionalDependencySelector filter these out even at "collection" stage (as depth >= 2).
Hence, fix DownloadMojo to resolve properly, that actually shifts all the tree "one level up", and hence result is same as in Maven, as the optional dependencies become "first level sibling".
---
https://issues.apache.org/jira/browse/MNG-7667
This change extends Bootstrap IT (1st IT that fills in local repo) to hunt down some plugins that are bound in lifecycles provided by Maven under test.
Changes:
* the Bootstrap IT invokes only the phase where DownloadMojo is bound
* DownloadMojo (the "bootstrap") changed to do "this or that": it either resolves all artifacts from provided file OR collects plugins for given project packaging plugin versions provided by tested Maven default lifecycle.
* Split more Bootstrap project POMs, now we have 4 modules, we can add more (even extension if needed)
---
https://issues.apache.org/jira/browse/MNG-7667
* Modernize IT plugins to use annotations
* Align some tests to maven 3.8.6
# Conflicts:
# core-it-suite/src/test/resources-filtered/bootstrap.txt
# core-it-suite/src/test/resources/mng-3221/report/pom.xml
# core-it-suite/src/test/resources/mng-3428/pom.xml
# core-it-suite/src/test/resources/mng-3530/build-path/plugin/pom.xml
# core-it-suite/src/test/resources/mng-3530/pom-property/plugin/pom.xml
# core-it-suite/src/test/resources/mng-3530/resource-object/plugin/pom.xml
# core-it-suite/src/test/resources/mng-3704/maven-mng3704-plugin/pom.xml
# core-it-suite/src/test/resources/mng-3743/plugins/maven-mng3743-check-plugin/pom.xml
# core-it-suite/src/test/resources/mng-3743/plugins/maven-mng3743-report-plugin/pom.xml
# core-it-suite/src/test/resources/mng-3743/project/pom.xml
# core-it-suite/src/test/resources/mng-4086/repo/org/apache/maven/its/mng4086/maven-it-plugin-a/0.1/maven-it-plugin-a-0.1.pom
# core-it-suite/src/test/resources/mng-4086/repo/org/apache/maven/its/mng4086/maven-it-plugin-a/0.2-SNAPSHOT/maven-it-plugin-a-0.2-20090315.124508-1.pom
# core-it-suite/src/test/resources/mng-5581-lifecycle-mapping-delegate/extension/pom.xml
# core-it-suite/src/test/resources/mng-7310-lifecycle-activated-in-specified-module/project/pom.xml
* Add dependencies on all support artifacts to ensure multithreaded builds can use correct ordering
* Add missing dependencies on plexus-utils
* Fix for mng-7335 test
* Fix ITs for maven 4
* Rename Component -> TestComponent to leave room for the annotation
* Upgrade a few plugin versions
* Upgrade some JDK requirements to 1.8
* Remove unwanted parentheseses
* Convert the last mojo to annotations
* Force timestamped build
* Fix ITs following Component -> TestComponent rename
* Remove commented block
* Remove versions infered from plugin management
* The implementation parameter is not supported anymore
* Align maven core version
* Fix bad merge
* Move ITs to JDK 8 / JUnit 5
* Add missing tests, move disabled test comments to the test itself
* Add unreferenced tests (Unreferenced tests are automatically added at the beginning, but it looks more coherent to add them anyway)
* Reset verifier to run fresh test in MNG-5581
* Remove useless lines
* Minimize changes in imports
Co-authored-by: Michael Osipov <michaelo@apache.org>