B.3. 自定义 Karaf assembly
创建 Karaf 服务器装配的建议方法是使用 karaf- maven-plugin 提供的
目标。这会从项目的 karaf
:assemblypom.xml
文件中的 Maven 依赖项编译服务器。在 karaf-maven-plugin
配置中指定的捆绑包(或功能)和 pom.xml
中的 < ;dependencies
> 部分指定的依赖项都可以进入自定义的 karaf assembly 中。
对于 kar
具有
kar
类型的依赖项将作为 startup (scope=compile), boot (scope=runtime)或 installed (scope=provided) kars in karaf-maven-plugin 添加。kars 被解压缩到工作目录(target/assembly),并且搜索功能 XML,并用作额外功能存储库(与给定 kar 的阶段相同)。对于 features.xml
具有分类器
的依赖项
将用作启动(scope=compile)、引导(scope=runtime)或安装(scope=provided)存储库(在 karaf-maven-plugin 中)。不需要显式添加 kar 中的功能存储库。对于 jar 和捆绑包
bundle
或jar
类型的依赖项将用作启动(scope=compile), boot (scope=runtime)或 installed (scope=provided)捆绑包(在 karaf-maven-plugin 中)。
B.3.1. Karaf:assembly 目标 复制链接链接已复制到粘贴板!
您可以使用 karaf-maven-plugin
提供的 karaf:assembly
目标来创建 Karaf 服务器装配。此目标从项目 POM 中的 Maven 依赖项装有微服务风格服务器装配。在 OpenShift 项目的 Fuse 中,建议您将 karaf:assembly
目标绑定到 Maven 安装阶段。该项目使用捆绑包打包,项目本身将安装到 Karaf 容器中,方法是在 bootBundles
元素中列出它。
在启动阶段仅包含 karaf 框架功能所需的元素,因为它将进入 etc/startup.properties
,并在此阶段 karaf 功能服务没有完全启动。延迟其他元素来引导阶段。
Example
以下示例显示了 Quickstart 中的典型 Maven 配置: