[ 
https://jira.codehaus.org/browse/MNG-5639?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Herve Boutemy updated MNG-5639:
-------------------------------

    Description: 
Running mvn help:effective-pom on the attached POM:

{noformat}[ERROR]   The project 
com.ming:maven-failing-import-pom-example:1.0.0-SNAPSHOT 
(C:\wip\scratch-dev\maven-import-dependency-management\pom.xml) has 1 error
[ERROR]     Non-resolvable import POM: Could not transfer artifact 
org.springframework:spring-framework-bom:pom:4.0.0.R2 from/to spring-milestones 
(${spring.url}): No connector available to access repository spring-milestones 
(${spring.url}) of type default using the available factories 
WagonRepositoryConnectorFactory @ line 20, column 25 -> Help 2]{noformat}

mvn help:effective-pom -Prepo-will-succeed works as expected.



Note that prior to attempting the failing resolution, the full project POM 
model has successfully been resolved. So the correct value for the property is 
known and could in theory be substituted into the repository URL before the 
failing import pom resolve attempt.


Will create a Github pull request with one possible solution to this - it 
includes a JUnit test case.


Note: agreed this is a contrived example. To try and give an idea of the actual 
use case - several development streams are setup with individual sandboxed 
Nexus repository holding specific version of several shared components. The 
repository configuration uses the pattern 
$\{nexus.baseurl}/content/groups/$\{stream.name} with the properties set in 
settings.xml file. 

One workaround would be to create profiles for every work stream that 
explicitly list the full repository URL, even then the above feature would be 
nice to allow the $\{nexus.baseurl} to avoid repeating that part.

  was:
Running mvn help:effective-pom on the attached POM:

[ERROR]   The project com.ming:maven-failing-import-pom-example:1.0.0-SNAPSHOT 
(C:\wip\scratch-dev\maven-import-dependency-management\pom.xml) has 1 error
[ERROR]     Non-resolvable import POM: Could not transfer artifact 
org.springframework:spring-framework-bom:pom:4.0.0.R2 from/to spring-milestones 
(${spring.url}): No connector available to access repository spring-milestones 
(${spring.url}) of type default using the available factories 
WagonRepositoryConnectorFactory @ line 20, column 25 -> Help 2]

mvn help-effective-pom -Prepo-will-succeed works as expected.



Note that prior to attempting the failing resolution the full project POM model 
has successfully been resolved. So the correct value for the property is known 
and could in theory be substituted into the repository URL before the failing 
import pom resolve attempt.


Will create a Github pull request with one possible solution to this - it 
includes a JUnit test case.


Note: agreed this is a contrived example. To try and give an idea of the actual 
use case - several development streams are setup with individual sandboxed 
Nexus repository holding specific version of several shared components. The 
repository configuration uses the pattern 
${nexus.baseurl}/content/groups/${stream.name} with the properties set in 
settings.xml file. 

One workaround would be to create profiles for every work stream that 
explicitly list the full repository URL, even then the above feature would be 
nice to allow the ${nexus.baseurl} to avoid repeating that part.


> Support resolution of Import Scope POMs from Repo that contains a ${parameter}
> ------------------------------------------------------------------------------
>
>                 Key: MNG-5639
>                 URL: https://jira.codehaus.org/browse/MNG-5639
>             Project: Maven
>          Issue Type: Improvement
>          Components: Dependencies
>    Affects Versions: 3.2.1
>            Reporter: Mark Ingram
>            Assignee: Jason van Zyl
>            Priority: Minor
>             Fix For: 3.2.2
>
>         Attachments: pom.xml
>
>
> Running mvn help:effective-pom on the attached POM:
> {noformat}[ERROR]   The project 
> com.ming:maven-failing-import-pom-example:1.0.0-SNAPSHOT 
> (C:\wip\scratch-dev\maven-import-dependency-management\pom.xml) has 1 error
> [ERROR]     Non-resolvable import POM: Could not transfer artifact 
> org.springframework:spring-framework-bom:pom:4.0.0.R2 from/to 
> spring-milestones (${spring.url}): No connector available to access 
> repository spring-milestones (${spring.url}) of type default using the 
> available factories WagonRepositoryConnectorFactory @ line 20, column 25 -> 
> Help 2]{noformat}
> mvn help:effective-pom -Prepo-will-succeed works as expected.
> Note that prior to attempting the failing resolution, the full project POM 
> model has successfully been resolved. So the correct value for the property 
> is known and could in theory be substituted into the repository URL before 
> the failing import pom resolve attempt.
> Will create a Github pull request with one possible solution to this - it 
> includes a JUnit test case.
> Note: agreed this is a contrived example. To try and give an idea of the 
> actual use case - several development streams are setup with individual 
> sandboxed Nexus repository holding specific version of several shared 
> components. The repository configuration uses the pattern 
> $\{nexus.baseurl}/content/groups/$\{stream.name} with the properties set in 
> settings.xml file. 
> One workaround would be to create profiles for every work stream that 
> explicitly list the full repository URL, even then the above feature would be 
> nice to allow the $\{nexus.baseurl} to avoid repeating that part.



--
This message was sent by Atlassian JIRA
(v6.1.6#6162)

Reply via email to