The following patch fix this issue (at least, it's the same behavior as Karaf
2.4, i don't know however if it's the philosophy of Karaf4).
diff --git
a/features/core/src/main/java/org/apache/karaf/features/internal/region/Subsystem.java
b/features/core/src/main/java/org/apache/karaf/features/internal/region/Subsystem.java
index a449e16..bd351af 100644
---
a/features/core/src/main/java/org/apache/karaf/features/internal/region/Subsystem.java
+++
b/features/core/src/main/java/org/apache/karaf/features/internal/region/Subsystem.java
@@ -434,10 +434,13 @@
final String loc = bi.getLocation();
final Conditional cond = entry.getValue();
ResourceImpl res = bundles.get(loc);
+
+ int sl = bi.getStartLevel() <= 0 ? feature.getStartLevel()
: bi.getStartLevel();
+
if (bi.isDependency()) {
- addDependency(res, false, bi.isStart(),
bi.getStartLevel());
+ addDependency(res, false, bi.isStart(), sl);
} else {
- doAddDependency(res, cond == null, bi.isStart(),
bi.getStartLevel());
+ doAddDependency(res, cond == null, bi.isStart(), sl);
}
if (cond != null) {
addIdentityRequirement(res, resConds.get(cond), true);
--
View this message in context:
http://karaf.922171.n3.nabble.com/Karaf-4-0-3-Features-Start-Level-tp4043865p4043914.html
Sent from the Karaf - User mailing list archive at Nabble.com.