You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Christian Koppen (JIRA)" <ji...@codehaus.org> on 2014/05/16 10:46:10 UTC

[jira] (MNG-5634) Import scope is not respected in profiles

Christian Koppen created MNG-5634:
-------------------------------------

             Summary: Import scope is not respected in profiles
                 Key: MNG-5634
                 URL: https://jira.codehaus.org/browse/MNG-5634
             Project: Maven 2 & 3
          Issue Type: Bug
          Components: Dependencies, Inheritance and Interpolation
    Affects Versions: 3.0.5
            Reporter: Christian Koppen
         Attachments: import-scope-in-profile.zip

The import scope does not work as expected when used in a scenario with inheritance and profiles.

Please have a look at the attached testcase to understand the problem. 
We have a project POM that declares a dependency. The scope of this dependency ('runtime') is imported from a BOM POM ('runtime-bom'). The project POM has a parent POM which defines two profiles. In the first profile ('direct'), the scope of the dependency is set to 'provided'. In the second profile ('bom'), another BOM POM ('provided-pom') is imported that defines the scope of the dependency as 'provided'. 

When maven is executed without defining profiles, the dependency is resolved in scope 'runtime'. This is what I expect.
When maven is executed with profile 'direct', the dependency is resolved in scope 'provided'. This is what I expect.
When maven is executed with profile 'bom', the dependency is resolved in scope 'runtime'. I expect the scope to be 'provided'.

The documentation ( http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html ) states that a dependency with scope 'import' is *replaced* by the dependencyManagement-block of the imported POM. This is not true in this case.

Output from the command line:
import-scope-in-profile\project>mvn -Pdirect dependency:tree
[INFO] --- maven-dependency-plugin:2.1:tree (default-cli) @ project ---
[INFO] org.apache.maven.issues:project:jar:1.0-SNAPSHOT
[INFO] \- org.apache.maven.issues:dependency:jar:1.0SNAPSHOT:provided

import-scope-in-profile\project>mvn -Pbom dependency:tree
[INFO] --- maven-dependency-plugin:2.1:tree (default-cli) @ project ---
[INFO] org.apache.maven.issues:project:jar:1.0-SNAPSHOT
[INFO] \- org.apache.maven.issues:dependency:jar:1.0-SNAPSHOT:runtime



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