karaf-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Minto van der Sluis (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (KARAF-2519) karaf-maven-plugin ignores dependent feature repositories when building an assembly
Date Mon, 14 Oct 2013 16:14:42 GMT

    [ https://issues.apache.org/jira/browse/KARAF-2519?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13794236#comment-13794236
] 

Minto van der Sluis commented on KARAF-2519:
--------------------------------------------

The following is copied from the mailing list:

I made some changes in a karaf fork. Basically the changes I made are: 

1) Split dependency processing into 2 separate phases: 
    - First phase to install kars and feature repositories recursively building a full map
of all features present in the installed repositories (fullFeatureMap). 
    - Second run to process features like it was done before building a list of features to
be installed (localRepoFeatures). 
2) Missing feature dependency handling 
    - Missing features are collected per repository (no longer a global list) 
    - Used a queue rather than a list since added recursive dependent features where not processed.

    - Added additional feedback/logging to show which features are being processed. 
3) Collecting bundles features is simplified. 
    - Check for bundle.isDependency() is removed. IMHO there is no need to filter on dependency
is true, since that would actually result in excluding these dependencies from the assembly.

    - Removed redundant unused check, look for "test" in the original code 
    - reused install() method to do the actual artefact copying. 
4) Simplified execute() method by re-factoring stuff into separate methods. 

These changes can be found at: 

https://github.com/misl/karaf/blob/trunk/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/features/InstallKarsMojo.java

Also I added some TODO's in places where I think things could be improved 
even more. 

> karaf-maven-plugin ignores dependent feature repositories when building an assembly
> -----------------------------------------------------------------------------------
>
>                 Key: KARAF-2519
>                 URL: https://issues.apache.org/jira/browse/KARAF-2519
>             Project: Karaf
>          Issue Type: Bug
>          Components: karaf-tooling
>    Affects Versions: 3.0.0.RC1
>            Reporter: Minto van der Sluis
>
> Feature repositories in features.xml files are not processed recursively:
> <features name="wicketkaraf" version="1.0.0-SNAPSHOT"> 
> <repository>mvn:org.ops4j.pax.wicket/paxwicket/3.0.1/xml/features</repository>

> <repository>mvn:org.ops4j.pax.wicket/features/3.0.1/xml/features</repository>

>   ... 
> As a result dependent features might be missing since there is no other way to find their
corresponsing bundles. The only work around it to add all dependent feature repositories as
features (classifier) dependencies to your pom and add the needed features as bootFeatures
to the karaf-maven-plugin configuration.
> See mailing list discussion as well: http://karaf.922171.n3.nabble.com/How-to-include-all-dependencies-in-karaf-assembly-tt4029728.html



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Mime
View raw message