【发布时间】:2020-02-24 19:05:24
【问题描述】:
我正在尝试在我的全新捆绑包中添加一个功能,该功能会在 Apache Karaf 容器启动时触发一次。
Bundle 中的主类如下所示:
@Component(service = BrandNewBundle.class)
public class BrandNewBundle {
....
@Activate
protected void activate(ComponentContext myComponentContext) {
LOG.info("Brand new bundle started.");
}
}
在 karaf 控制台中,我看到捆绑包状态为 Active。但在日志中,我没有看到我尝试记录的消息。
一些信息:
- 这是一个 Maven 构建
-
osgi.cmpn和slf4j-api是我在pom.xml中的依赖项,目前还没有。 - 这里没有
bnd.bnd文件
我已阅读Apache Felix Service Component Runtime (SCR) 页面。与那里提到的不同,我的OSGI-INF/....xml 是自动生成的。我不知道如何进一步调试。
综上所述,问题是,如何真正触发我的activate函数?
【问题讨论】:
标签: java osgi apache-karaf