You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Laird Nelson (JIRA)" <ji...@codehaus.org> on 2011/09/28 15:49:17 UTC

[jira] Issue Comment Edited: (MEAR-143) Plugin does not respect transitive dependency scopes properly

    [ https://jira.codehaus.org/browse/MEAR-143?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=280178#comment-280178 ] 

Laird Nelson edited comment on MEAR-143 at 9/28/11 8:48 AM:
------------------------------------------------------------

I was under the impression that if I "overrode" the scope the overridden scope would be honored?

Note that the dependencyManagement section initially defines mear-143-leaf's scope to be "test".  But the actual dependency information in mear-143-middle overrides the scope to be runtime.  Shouldn't the scope of the ear file's transitive mear-143-leaf dependency therefore be runtime?  No?

      was (Author: ljnelson):
    I was under the impression that if I "overrode" the scope the overridden scope would be honored?

Note that the dependencyManagement section initially defines mear-143-leaf's scope to be "test".  But the actual dependency information in the ear file overrides the scope to be runtime.  Shouldn't the scope of the dependency therefore be runtime?  No?
  
> Plugin does not respect transitive dependency scopes properly
> -------------------------------------------------------------
>
>                 Key: MEAR-143
>                 URL: https://jira.codehaus.org/browse/MEAR-143
>             Project: Maven 2.x Ear Plugin
>          Issue Type: Bug
>    Affects Versions: 2.6
>            Reporter: Laird Nelson
>         Attachments: mear-143.zip
>
>
> The [Introduction to the Dependency Mechanism page|http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html#Dependency_Scope] has a handy table for deciding what to do with transitive dependencies and various scopes.  The Maven ear plugin does not honor it in all cases.
> Suppose I have a {{.jar}} file.  Its name is {{b.jar}}.  It declares a {{runtime}} dependency on {{a.jar}}.
> Suppose now I have an {{.ear}} project.  It declares a {{compile}} scope dependency on {{b.jar}}.
> By the rules of the chart, {{a.jar}} should end up being a {{runtime}} dependency (transitively) of the {{.ear}}, and should be included in the {{lib}} directory.  It is not.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira