[ https://issues.apache.org/jira/browse/FELIX-3565?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13435899#comment-13435899 ]
Tuomas Kiviaho commented on FELIX-3565: --------------------------------------- I noticed that the example which used type bundle would not be working correctly due to http://jira.codehaus.org/browse/MSHARED-235 > Embed-Transitive leaks transitive dependencies of excluded artifacts > -------------------------------------------------------------------- > > Key: FELIX-3565 > URL: https://issues.apache.org/jira/browse/FELIX-3565 > Project: Felix > Issue Type: Bug > Components: Maven Bundle Plugin > Affects Versions: maven-bundle-plugin-2.3.7 > Reporter: Tuomas Kiviaho > Attachments: maven-bundle-plugin.patch > > > I was trying to re-config some of my projects so that I get compile(+runtime) > scoped dependencies and their transitive dependencies embedded by using > Embed-Transitive=true with the exception of dependencies that I had with type > bundle. Exclusion of bundles turned out to be trickier than I though because > I can't use provided scope without sacrificing the respective transitive > dependencies in the process. Everything went ok until I noticed that > inclusion process with the transitive dependencies of already excluded > compile scoped dependencies that had type set to bundle as shown below where > I'm getting dep-2.2 embedded although it should be excluded. > myproject (*;scope=compile|bundle;type=!bundle) > +dep-1;scope=compile;type=jar // included ok > +dep-1.1;scope=compile;type=jar // included ok > -dep-1.2;scope=compile;type=bundle // excluded ok and there are no > transitive dependency candidates available > -dep-1.3;scope=provided;type=bundle // excluded ok because scope is provided > -dep-1.3.1;scope=compile;type=jar // excluded ok although scope is > compile because provided scope doesn't reveal any of the existing > dependencies as transitive dependencies > -dep-2;scope=compile;type=bundle // excluded ok because type is bundle > -dep-2.1;scope=provided;type=jar // excluded ok because scope is provided > +dep-2.2;scope=compile;type=jar // NOT excluded ok because scope and type > no not match exclusion pattern > In short: Everything not matching exclusion pattern (and matching inclusion > pattern) will be excluded no matter if their origin has been already excluded. > I checked the codebase and noticed that the reason for having 'NOTE: test > scoped dependencies are not included in the classpath seen by BND.' on the > web page accumulated from the problem. It seems that dependency tree shared > component seems to have given problems before and that Aether isn't backwards > compatible but I suggest giving a try to maven-dependency-tree 2.0 that is > Aether based for Maven 3 but remains still backwards compatible with Maven 2. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira