You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Jean-Sébastien Scrève (JIRA)" <ji...@codehaus.org> on 2008/11/25 15:22:19 UTC

[jira] Created: (MASSEMBLY-368) In a DependencySet I cannot get scope to be transitive

In a DependencySet I cannot get scope to be transitive
------------------------------------------------------

                 Key: MASSEMBLY-368
                 URL: http://jira.codehaus.org/browse/MASSEMBLY-368
             Project: Maven 2.x Assembly Plugin
          Issue Type: Bug
    Affects Versions: 2.2-beta-2
         Environment: I define an assembly having the  "dir" format.
            Reporter: Jean-Sébastien Scrève


I have a project "A" who has a dependency to another project named "myDomain".

<dependency>
	<groupId>myDomain</groupId>
	<artifactId>myDomain</artifactId>
	<version>1.0.0</version>
	<scope>provided</scope>
</dependency>

myDomain also has others "provided" dependencies :

<dependency>
	<groupId>asm</groupId>
	<artifactId>asm</artifactId>
	<version>2.2.3</version>
	<scope>provided</scope>
</dependency>

<dependency>
	<groupId>asm</groupId>
	<artifactId>asm-attrs</artifactId>
	<version>2.2.3</version>
	<scope>provided</scope>
</dependency>

In my assembly descriptor, I define the following dependency set :

<dependencySet>
	<useProjectArtifact>false</useProjectArtifact>
	<useTransitiveDependencies>true</useTransitiveDependencies>
	<outputDirectory></outputDirectory>
	<unpack>false</unpack>
	<scope>provided</scope>
</dependencySet>

None of the "provided" dependencies of myDomain project are included into my assembly. 
That is :asm:asm and asm:asm-attrs are not included but myDomain:myDomain is included.



-- 
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

       

[jira] Updated: (MASSEMBLY-368) In a DependencySet I cannot get scope to be transitive

Posted by "Dennis Lundberg (JIRA)" <ji...@codehaus.org>.
     [ http://jira.codehaus.org/browse/MASSEMBLY-368?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Dennis Lundberg updated MASSEMBLY-368:
--------------------------------------

    Fix Version/s:     (was: 2.2)

> In a DependencySet I cannot get scope to be transitive
> ------------------------------------------------------
>
>                 Key: MASSEMBLY-368
>                 URL: http://jira.codehaus.org/browse/MASSEMBLY-368
>             Project: Maven 2.x Assembly Plugin
>          Issue Type: Bug
>    Affects Versions: 2.2-beta-2
>         Environment: I define an assembly having the  "dir" format.
>            Reporter: Jean-Sébastien Scrève
>            Assignee: John Casey
>
> I have a project "A" who has a dependency to another project named "myDomain".
> <dependency>
> 	<groupId>myDomain</groupId>
> 	<artifactId>myDomain</artifactId>
> 	<version>1.0.0</version>
> 	<scope>provided</scope>
> </dependency>
> myDomain also has others "provided" dependencies :
> <dependency>
> 	<groupId>asm</groupId>
> 	<artifactId>asm</artifactId>
> 	<version>2.2.3</version>
> 	<scope>provided</scope>
> </dependency>
> <dependency>
> 	<groupId>asm</groupId>
> 	<artifactId>asm-attrs</artifactId>
> 	<version>2.2.3</version>
> 	<scope>provided</scope>
> </dependency>
> In my assembly descriptor, I define the following dependency set :
> <dependencySet>
> 	<useProjectArtifact>false</useProjectArtifact>
> 	<useTransitiveDependencies>true</useTransitiveDependencies>
> 	<outputDirectory></outputDirectory>
> 	<unpack>false</unpack>
> 	<scope>provided</scope>
> </dependencySet>
> None of the "provided" dependencies of myDomain project are included into my assembly. 
> That is :asm:asm and asm:asm-attrs are not included but myDomain:myDomain is included.

-- 
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

       

[jira] Closed: (MASSEMBLY-368) In a DependencySet I cannot get scope to be transitive

Posted by "John Casey (JIRA)" <ji...@codehaus.org>.
     [ http://jira.codehaus.org/browse/MASSEMBLY-368?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

John Casey closed MASSEMBLY-368.
--------------------------------

       Resolution: Won't Fix
    Fix Version/s: 2.2-beta-6
         Assignee: John Casey

N+1-level transitive dependencies with scope == provided are NOT included in the transitive closure when dependencies are resolved. This is a Maven design for the provided scope, that these dependencies are assumed to be present.

It's an ongoing debate whether they should be made available for downstream projects to compile against, but for now the workaround is to redeclare those dependencies in your own POM, again with provided scope.

> In a DependencySet I cannot get scope to be transitive
> ------------------------------------------------------
>
>                 Key: MASSEMBLY-368
>                 URL: http://jira.codehaus.org/browse/MASSEMBLY-368
>             Project: Maven 2.x Assembly Plugin
>          Issue Type: Bug
>    Affects Versions: 2.2-beta-2
>         Environment: I define an assembly having the  "dir" format.
>            Reporter: Jean-Sébastien Scrève
>            Assignee: John Casey
>             Fix For: 2.2-beta-6
>
>
> I have a project "A" who has a dependency to another project named "myDomain".
> <dependency>
> 	<groupId>myDomain</groupId>
> 	<artifactId>myDomain</artifactId>
> 	<version>1.0.0</version>
> 	<scope>provided</scope>
> </dependency>
> myDomain also has others "provided" dependencies :
> <dependency>
> 	<groupId>asm</groupId>
> 	<artifactId>asm</artifactId>
> 	<version>2.2.3</version>
> 	<scope>provided</scope>
> </dependency>
> <dependency>
> 	<groupId>asm</groupId>
> 	<artifactId>asm-attrs</artifactId>
> 	<version>2.2.3</version>
> 	<scope>provided</scope>
> </dependency>
> In my assembly descriptor, I define the following dependency set :
> <dependencySet>
> 	<useProjectArtifact>false</useProjectArtifact>
> 	<useTransitiveDependencies>true</useTransitiveDependencies>
> 	<outputDirectory></outputDirectory>
> 	<unpack>false</unpack>
> 	<scope>provided</scope>
> </dependencySet>
> None of the "provided" dependencies of myDomain project are included into my assembly. 
> That is :asm:asm and asm:asm-attrs are not included but myDomain:myDomain is included.

-- 
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

       

[jira] Commented: (MASSEMBLY-368) In a DependencySet I cannot get scope to be transitive

Posted by "Joshua Pollak (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MASSEMBLY-368?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=156548#action_156548 ] 

Joshua Pollak commented on MASSEMBLY-368:
-----------------------------------------

I have the same problem with the tar.gz format. This is the head of my assembly xml file:

{{monospaced}}
<assembly>
    <id>plugin</id>
    <formats>
        <format>tar.gz</format>
    </formats>
    <baseDirectory>${project.artifactId}-${project.version}</baseDirectory>
    <dependencySets>
        <dependencySet>
            <outputDirectory>lib</outputDirectory>
            <useTransitiveDependencies>true</useTransitiveDependencies>
            <useTransitiveFiltering>false</useTransitiveFiltering>
            <includes>
                <include>org.mule.transports:mule-transport-sqs</include>
            </includes>
        </dependencySet>
     </dependencySets>
...
{{monospaced}}

The mule-transport-sqs depends on a library called typica, which depends on a few other libraries. The only jar to appear in the lib directory is the mhs-transport-sqs itself.

I added <useTransitiveFiltering>false</useTransitiveFiltering> in an effort to fix the problem (I know false is the default), but it didn't help.

> In a DependencySet I cannot get scope to be transitive
> ------------------------------------------------------
>
>                 Key: MASSEMBLY-368
>                 URL: http://jira.codehaus.org/browse/MASSEMBLY-368
>             Project: Maven 2.x Assembly Plugin
>          Issue Type: Bug
>    Affects Versions: 2.2-beta-2
>         Environment: I define an assembly having the  "dir" format.
>            Reporter: Jean-Sébastien Scrève
>
> I have a project "A" who has a dependency to another project named "myDomain".
> <dependency>
> 	<groupId>myDomain</groupId>
> 	<artifactId>myDomain</artifactId>
> 	<version>1.0.0</version>
> 	<scope>provided</scope>
> </dependency>
> myDomain also has others "provided" dependencies :
> <dependency>
> 	<groupId>asm</groupId>
> 	<artifactId>asm</artifactId>
> 	<version>2.2.3</version>
> 	<scope>provided</scope>
> </dependency>
> <dependency>
> 	<groupId>asm</groupId>
> 	<artifactId>asm-attrs</artifactId>
> 	<version>2.2.3</version>
> 	<scope>provided</scope>
> </dependency>
> In my assembly descriptor, I define the following dependency set :
> <dependencySet>
> 	<useProjectArtifact>false</useProjectArtifact>
> 	<useTransitiveDependencies>true</useTransitiveDependencies>
> 	<outputDirectory></outputDirectory>
> 	<unpack>false</unpack>
> 	<scope>provided</scope>
> </dependencySet>
> None of the "provided" dependencies of myDomain project are included into my assembly. 
> That is :asm:asm and asm:asm-attrs are not included but myDomain:myDomain is included.

-- 
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