在 bndtools/maven 项目中将配置放在哪里?

Where to put configuration in a bndtools/maven project?

我有一个项目,我使用 bndtools 项目中的 bnd-maven-plugin。我试图遵循 enRoute OSGI maven 教程中的约定。所以,我有一个带有模块 pom 的父目录,每个包都有一个子目录,还有一个用于打包和 运行 整个东西(带有 bndrun 文件)。

问题是,如何传递配置?以前,当我使用 (felix) maven-bundle-plugin 构建捆绑包时,我会将捆绑包放入 Karaf 的部署文件夹中,并在配置目录中为 PID 创建一个文件,但我不能这样做构建一个独立的 jar - 或者至少我找不到方法。

配置独立于 bndtools 和 bnd-maven-plugin。

提供配置的方式取决于安装的配置管理员实现。如果你安装 felix config admin 和 fileinstall 那么你可以像你习惯的那样在配置文件夹中提供配置。

有关示例,请参阅 osgi-chat example。它是用 maven 构建的,包是用 bnd-maven-plugin 创建的,可运行的 jar 是用 bndtools 创建的。

Felix config admin 和 file install 已配置 in rsa.bndrun.