在 Karaf 容器中打包和部署 OSGi 包和 Karaf 特性

Package and deploy OSGi bundles and Karaf features in Karaf Container

最近在做Apache Karaf项目。

第一个是 CXF REST service example and the second one is an Apache Karaf Maven example 到 运行 并部署一个 Karaf 容器。

我想做的是将这两者结合起来。这个想法是从存储库下载几个 JAR 文件,然后将它们打包到 Karaf 中。

手动构建 Karaf 程序集,然后将创建的 JAR 文件部署到我在 Karaf 下的部署文件夹中,如果任务每天都重复发生,这不是一个好主意。如果可能的话,我非常想自动执行此操作?

要在 Karaf 中实现 Java 项目的自动部署,请按照以下步骤操作:

  1. 创建一个功能项目:这是一个Maven项目,其目标是创建一个JAR(bundle)的描述符,以便在Karaf下部署。这个Maven项目的打包是feature

  2. 对于您的 Karaf Assembly 项目,将您的功能添加为依赖项并将其添加为启动功能,以便在 Karaf 启动时安装它。

看看这个项目https://github.com/benson-basis/karaf-feature-version-tc。 它具有自动构建和部署 Karaf 所需的所有配置。