3.7. 创建项目


您可以将 Camel JBang 集成 导出到 传统的基于 Java 的项目,如 Spring Boot 或 Quarkus。您可能希望在使用 Camel JBang 来构建了 kiosk 后执行此操作,并且需要传统的基于 Java 的项目,对 Java 编码的需求,或使用 Spring Boot、Quarkus 或 vanilla Camel Main 的强大运行时。

3.7.1. 导出至 Camel Spring Boot

命令将 --runtime=spring-boot 将当前的 Camel JBang 文件导出到 基于 Maven 的 Spring Boot 项目,其中的文件采用 src/main/ 文件夹结构。

例如,要使用 Maven groupId com.foo 和 artifactId acme 以及版本 1.0-SNAPSHOT 导出到 Spring Boot,请运行:

camel export --runtime=spring-boot --gav=com.foo:acme:1.0-SNAPSHOT
注意

这将导出到 当前目录中,这意味着文件将移到所需的文件夹结构中。

要导出到另一个目录,请运行:

camel export --runtime=spring-boot --gav=com.foo:acme:1.0-SNAPSHOT --directory=../myproject

当导出到 Spring Boot 时,pom.xmlbuild.gradle 中定义的 Camel 版本与 Camel JBang 使用的版本相同。但是,您可以指定不同的 Camel 版本,如下所示:

camel export --runtime=spring-boot --gav=com.foo:acme:1.0-SNAPSHOT --directory=../myproject --camel-spring-boot-version=3.20.1.redhat-00064
注意

如需了解更多详细信息,请参阅运行 camel export --help 命令的选项。

3.7.2. 包括使用 Camel CLI 导出

当导出到 Spring Boot、Quarkus 或 Camel Main 时,不会包含 Camel JBang CLI。要继续使用 Camel CLI (即 camel),您需要在 --deps 选项中添加 camel:cli-connector,如下所示:

camel export --runtime=quarkus --gav=com.foo:acme:1.0-SNAPSHOT --deps=camel:cli-connector --directory=../myproject

3.7.3. 配置导出

export 命令默认从 application.properties 文件加载配置,该文件用于导出特定参数,如选择运行时和 java 版本。

可在 application.properties 文件中配置与 导出 相关的以下选项:

选项Description

camel.jbang.runtime

运行时(spring-boot、quarkus 或 camel-main)

camel.jbang.gav

Maven 组:artifact:version

camel.jbang.dependencies

其他依赖项(使用逗号分隔多个依赖项)。请参阅 添加自定义 JAR 的更多信息。

camel.jbang.classpathFiles

要添加到 classpath 的额外文件(使用逗号分隔多个文件)。请参阅 添加自定义 JAR 的更多信息。

camel.jbang.javaVersion

Java 版本(11 或 17)

camel.jbang.kameletsVersion

Apache Camel Kamelets 版本

camel.jbang.localKameletDir

用于载入 Kamelets 的本地目录

camel.jbang.camelSpringBootVersion

用于 Spring Boot 的 Camel 版本

camel.jbang.springBootVersion

Spring Boot 版本

camel.jbang.quarkusGroupId

Quarkus Platform Maven groupId

camel.jbang.quarkusArtifactId

Quarkus Platform Maven artifactId

camel.jbang.quarkusVersion

Quarkus Platform 版本

camel.jbang.mavenWrapper

在导出的项目中包括 Maven Wrapper 文件

camel.jbang.gradleWrapper

在导出的项目中包括 Gradle Wrapper 文件

camel.jbang.buildTool

要使用的构建工具(maven 或 gradle)

camel.jbang.repos

用于按需下载的额外 maven 软件仓库(使用逗号分隔多个存储库)

camel.jbang.mavenSettings

maven setting.xml 文件的可选位置,以配置服务器、存储库、镜像和代理。如果设置为 false,而不是使用默认的 ~/.m2/settings.xml。

camel.jbang.mavenSettingsSecurity

maven settings-security.xml 文件的可选位置来解密 settings.xml

camel.jbang.exportDir

导出项目的目录。

camel.jbang.platform-http.port

运行独立 Camel 时使用的 HTTP 服务器端口,如启用 --console 时(默认为端口 8080)。

camel.jbang.console

运行独立 Camel 时,位于本地 HTTP 服务器上的 /q/dev 的开发人员控制台(默认端口 8080 )。

camel.jbang.health

在运行独立 Camel 时,在本地 HTTP 服务器的 /q/health (默认端口 8080)进行健康检查。

注意

这些是 export 命令中的选项。您可以使用 camel export --help 查看更多详情和默认值。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.