第 5 章 构建 OSGi 捆绑包

摘要

本章论述了如何使用 Maven 构建 OSGi 捆绑包。对于构建捆绑包,Maven bundle 插件会扮演重要角色,因为它可让您自动生成 OSGi 捆绑包的标头(否则会是一个繁琐的任务)。Maven archetypes 生成完整的示例项目,也可以为您的捆绑包项目提供一个起点。

5.1. 生成捆绑包项目

5.1.1. 使用 Maven archetypes 生成捆绑包项目

为了帮助您快速启动,您可以调用 Maven archetype 来生成 Maven 项目的初始概述( Maven archetype 与项目向导类似)。以下 Maven archetype 生成一个项目来构建 OSGi 捆绑包。

5.1.2. Apache Camel archetype

Apache Camel OSGi archetype 创建了一个项目,用于构建可部署到 OSGi 容器中的路由。

以下示例演示了如何使用 Maven archetype 命令和 GroupId:ArtifactId: Version:Version 来生成 camel-blueprint 项目。

mvn archetype:generate \
 -DarchetypeGroupId=org.apache.camel.archetypes \
 -DarchetypeArtifactId=camel-archetype-blueprint \
 -DarchetypeVersion=2.23.2.fuse-7_11_1-00015-redhat-00002

运行此命令后,Maven 会提示您指定 GroupIdArtifactId 和版本。

5.1.3. 构建捆绑包

默认情况下,前面的 archetypes 在一个新目录中创建一个项目,其名称与指定的工件 ID ArtifactId 相同。要构建新项目定义的捆绑包,请打开命令提示符,进入项目目录(即包含 pom.xml 文件的目录),并输入以下 Maven 命令:

mvn install

该命令的作用是编译所有 Java 源文件,以在 ArtifactId/target 目录下生成 bundle JAR,然后在本地 Maven 存储库中安装生成的 JAR。