Initialization of Extensions like Wagon happens after Retrieval of Parent-POM
-----------------------------------------------------------------------------
Key: MNG-3253
URL: http://jira.codehaus.org/browse/MNG-3253
Project: Maven 2
Issue Type: Bug
Components: Artifacts and Repositories
Affects Versions: 2.0.7
Reporter: Benjamin Bentmann
Consider the following scenario:
Artifacts are stored in an organization-specific repository using some protocol
like sftp, scp or ftp. To properly access this repository, one needs to enable
the proper wagon using a build <extension>. No troubles so far. Now project
"dummy" inherits configuration from project "parent". The corresponding
Parent-POM needs not to be located in the local file system of the executing
user (e.g not checked out from scm) but should be retrieved from the repository
like any other artifact. Unfortunately, Maven initializes build extensions like
wagon after the artifact resolution for the Parent-POM. So, when the Parent-POM
needs to be retrieved from a repository and this repository requires a specific
wagon but this wagon has not been initialized yet, the build will fail:{code}
[INFO] Scanning for projects...
[DEBUG] Searching for parent-POM: de.test:parent::SNAPSHOT of project:
null:dummy:jar:null in relative path: ../pom.xml
[DEBUG] Parent-POM: de.test:parent::SNAPSHOT not found in relative path:
../pom.xml
[DEBUG] Retrieving parent-POM: de.test:parent::SNAPSHOT for project:
null:dummy:jar:null from the repository.
[INFO] snapshot de.test:parent:SNAPSHOT: checking for updates from some-ftp-repo
[WARNING] repository metadata for: 'snapshot de.test:parent:SNAPSHOT' could not
be retrieved from repository: some-ftp-repo due to an error: Unsupported
Protocol: 'ftp': Cannot find wagon which supports the requested protocol: ftp
...
[ERROR] FATAL ERROR
[INFO] ------------------------------------------------------------------------
[INFO] Failed to resolve artifact.
{code}
Initializing build extensions from the current project, at least core stuff
like wagon, should be the first build task such that repository access is
always possible.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira