[ https://issues.apache.org/jira/browse/KARAF-4571?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15346026#comment-15346026 ]
ASF subversion and git services commented on KARAF-4571: -------------------------------------------------------- Commit 13d88742471624d04df0e7cd5f1ad0e3c052c3a5 in karaf's branch refs/heads/master from [~jbonofre] [ https://git-wip-us.apache.org/repos/asf?p=karaf.git;h=13d8874 ] [KARAF-4571] This closes #200 > karaf-maven-plugin should respect version ranges when generating features > repos > ------------------------------------------------------------------------------- > > Key: KARAF-4571 > URL: https://issues.apache.org/jira/browse/KARAF-4571 > Project: Karaf > Issue Type: Improvement > Components: karaf-tooling > Affects Versions: 4.0.5 > Reporter: Roland Hauser > Assignee: Jean-Baptiste Onofré > Fix For: 4.1.0, 4.0.6 > > > When for the dependencies of a feature project version ranges are used, then > the produced feature.xml > references the highest available version of a bundle. This is not always the > desired behavior. Instead of that, > it should be configurable if the latest base version of a dependency or the > version range itself should be written > to the feature file (when a dependency is declared with a version range). I > would suggest a new plugin configuration > property "useVersionRange". Suppose a dependency to commons-lang3: > {code:title=pom.xml} > <dependencies> > <dependency> > <groupId>org.apache.commons</groupId> > <artifactId>commons-lang3</artifactId> > <version>[3.0,3.4)</version> > </dependency> > </dependencies> > <build> > <plugins> > <plugin> > <groupId>org.apache.karaf.tooling</groupId> > <artifactId>karaf-maven-plugin</artifactId> > <version>4.1.0-SNAPSHOT</version> > <extensions>true</extensions> > </plugin> > </plugins> > </build> > {code} > If "useVersionRange" is set to "false" (default), then nothing changes, so > the resulting feature.xml would look like this: > {code:title=feature.xml} > <features xmlns="http://karaf.apache.org/xmlns/features/v1.4.0" > name="test-feature-use-base-version"> > <feature name="test-feature-use-base-version" > description="test-feature-use-base-version" version="1.0.0.SNAPSHOT"> > <bundle>mvn:org.apache.commons/commons-lang3/3.4</bundle> > </feature> > </features> > {code} > If "useVersionRange" is set to "true", instead of the base version the > declared version range will be used in the bundle element: > {code:title=pom.xml} > <build> > <plugins> > <plugin> > <groupId>org.apache.karaf.tooling</groupId> > <artifactId>karaf-maven-plugin</artifactId> > <version>@pom.version@</version> > <extensions>true</extensions> > <configuration> > <useVersionRange>true</useVersionRange> > </configuration> > </plugin> > </plugins> > </build> > {code} > {code:title=feature.xml} > <features xmlns="http://karaf.apache.org/xmlns/features/v1.4.0" > name="test-feature-use-version-range"> > <feature name="test-feature-use-version-range" > description="test-feature-use-version-range" version="1.0.0.SNAPSHOT"> > <bundle>mvn:org.apache.commons/commons-lang3/[3.0,3.4)</bundle> > </feature> > </features> > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)