You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ac...@apache.org on 2019/12/17 05:08:45 UTC
[camel-quarkus] branch master updated: Add initial support for
kotlin
This is an automated email from the ASF dual-hosted git repository.
acosentino pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel-quarkus.git
The following commit(s) were added to refs/heads/master by this push:
new eef25fe Add initial support for kotlin
new f3dca92 Merge pull request #549 from lburgazzoli/kotlin-extension
eef25fe is described below
commit eef25fe785e07a57b80d08a51d7e45f0896954e9
Author: lburgazzoli <lb...@gmail.com>
AuthorDate: Thu Dec 12 23:25:02 2019 +0100
Add initial support for kotlin
---
.../pages/list-of-camel-quarkus-extensions.adoc | 4 +-
examples/timer-log-kotlin/pom.xml | 21 +++-
.../org/acme/timer/{TimerRoute.kt => routes.kt} | 13 +-
extensions/kotlin/deployment/pom.xml | 136 +++++++++++++++++++++
.../quarkus/kotlin/deployment/KotlinFeature.kt | 18 +--
extensions/kotlin/pom.xml | 39 ++++++
.../kotlin/runtime}/pom.xml | 89 +++++---------
.../org/apache/camel/quarkus/kotlin/RoutesDSL.kt | 29 +++--
.../main/resources/META-INF/quarkus-extension.yaml | 29 +++++
extensions/pom.xml | 1 +
extensions/readme.adoc | 4 +-
pom.xml | 1 +
poms/bom-deployment/pom.xml | 5 +
poms/bom/pom.xml | 5 +
14 files changed, 316 insertions(+), 78 deletions(-)
diff --git a/docs/modules/ROOT/pages/list-of-camel-quarkus-extensions.adoc b/docs/modules/ROOT/pages/list-of-camel-quarkus-extensions.adoc
index 17e3b51..e8c7090 100644
--- a/docs/modules/ROOT/pages/list-of-camel-quarkus-extensions.adoc
+++ b/docs/modules/ROOT/pages/list-of-camel-quarkus-extensions.adoc
@@ -229,7 +229,7 @@ Number of Camel languages: 8 in 2 JAR artifacts (0 deprecated)
== Miscellaneous Extensions
// others: START
-Number of miscellaneous extensions: 7 in 7 JAR artifacts (0 deprecated)
+Number of miscellaneous extensions: 8 in 8 JAR artifacts (0 deprecated)
[width="100%",cols="4,1,5",options="header"]
|===
@@ -243,6 +243,8 @@ Number of miscellaneous extensions: 7 in 7 JAR artifacts (0 deprecated)
| (camel-quarkus-hystrix) | 1.0.0-M1 | Circuit Breaker EIP using Netflix Hystrix
+| (camel-quarkus-kotlin) | 1.0.0 | camel-quarkus-kotlin
+
| xref:extensions/microprofile-health.adoc[camel-quarkus-microprofile-health] | 0.3.0 | Bridging Eclipse MicroProfile Health with Camel health checks
| xref:extensions/opentracing.adoc[camel-quarkus-opentracing] | 0.3.0 | Distributed tracing using OpenTracing
diff --git a/examples/timer-log-kotlin/pom.xml b/examples/timer-log-kotlin/pom.xml
index 8a92642..ea19296 100644
--- a/examples/timer-log-kotlin/pom.xml
+++ b/examples/timer-log-kotlin/pom.xml
@@ -45,8 +45,8 @@
<artifactId>camel-quarkus-log</artifactId>
</dependency>
<dependency>
- <groupId>org.jetbrains.kotlin</groupId>
- <artifactId>kotlin-stdlib-jdk8</artifactId>
+ <groupId>org.apache.camel.quarkus</groupId>
+ <artifactId>camel-quarkus-kotlin</artifactId>
</dependency>
</dependencies>
@@ -85,6 +85,23 @@
</goals>
</execution>
</executions>
+ <configuration>
+ <compilerPlugins>
+ <plugin>all-open</plugin>
+ </compilerPlugins>
+ <pluginOptions>
+ <option>all-open:annotation=javax.enterprise.inject.Produces</option>
+ <option>all-open:annotation=javax.inject.Singleton</option>
+ <option>all-open:annotation=javax.enterprise.context.ApplicationScoped</option>
+ </pluginOptions>
+ </configuration>
+ <dependencies>
+ <dependency>
+ <groupId>org.jetbrains.kotlin</groupId>
+ <artifactId>kotlin-maven-allopen</artifactId>
+ <version>${kotlin.version}</version>
+ </dependency>
+ </dependencies>
</plugin>
</plugins>
</build>
diff --git a/examples/timer-log-kotlin/src/main/kotlin/org/acme/timer/TimerRoute.kt b/examples/timer-log-kotlin/src/main/kotlin/org/acme/timer/routes.kt
similarity index 73%
copy from examples/timer-log-kotlin/src/main/kotlin/org/acme/timer/TimerRoute.kt
copy to examples/timer-log-kotlin/src/main/kotlin/org/acme/timer/routes.kt
index 92fb6d4..129a6ef 100644
--- a/examples/timer-log-kotlin/src/main/kotlin/org/acme/timer/TimerRoute.kt
+++ b/examples/timer-log-kotlin/src/main/kotlin/org/acme/timer/routes.kt
@@ -16,12 +16,17 @@
*/
package org.acme.timer
-import org.apache.camel.builder.RouteBuilder
+import org.apache.camel.Exchange
+import org.apache.camel.quarkus.kotlin.routes
+import javax.enterprise.context.ApplicationScoped
+import javax.enterprise.inject.Produces
-class TimerRoute: RouteBuilder() {
- override fun configure() {
+@ApplicationScoped
+class Routes {
+ @Produces
+ fun myRoutes() = routes {
from("timer:foo?period=1s")
- .process { e -> e.message.body = "Hello from Kotlin!" }
+ .process { e: Exchange -> e.message.body = "Hello from Kotlin!" }
.log("\${body}")
}
}
\ No newline at end of file
diff --git a/extensions/kotlin/deployment/pom.xml b/extensions/kotlin/deployment/pom.xml
new file mode 100644
index 0000000..ca6a206
--- /dev/null
+++ b/extensions/kotlin/deployment/pom.xml
@@ -0,0 +1,136 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <parent>
+ <groupId>org.apache.camel.quarkus</groupId>
+ <artifactId>camel-quarkus-kotlin-parent</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+
+ <artifactId>camel-quarkus-kotlin-deployment</artifactId>
+ <name>Camel Quarkus :: Kotlin :: Deployment</name>
+
+ <dependencyManagement>
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.camel.quarkus</groupId>
+ <artifactId>camel-quarkus-bom-deployment</artifactId>
+ <version>${project.version}</version>
+ <type>pom</type>
+ <scope>import</scope>
+ </dependency>
+ </dependencies>
+ </dependencyManagement>
+
+ <dependencies>
+ <dependency>
+ <groupId>io.quarkus</groupId>
+ <artifactId>quarkus-core-deployment</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.camel.quarkus</groupId>
+ <artifactId>camel-quarkus-kotlin</artifactId>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.jetbrains.kotlin</groupId>
+ <artifactId>kotlin-maven-plugin</artifactId>
+ <version>${kotlin.version}</version>
+ <configuration>
+ <jvmTarget>${maven.compiler.target}</jvmTarget>
+ </configuration>
+ <executions>
+ <execution>
+ <id>kapt</id>
+ <goals>
+ <goal>kapt</goal>
+ </goals>
+ <configuration>
+ <sourceDirs>
+ <sourceDir>src/main/kotlin</sourceDir>
+ </sourceDirs>
+ <annotationProcessorPaths>
+ <annotationProcessorPath>
+ <groupId>io.quarkus</groupId>
+ <artifactId>quarkus-extension-processor</artifactId>
+ <version>${quarkus.version}</version>
+ </annotationProcessorPath>
+ </annotationProcessorPaths>
+ </configuration>
+ </execution>
+ <execution>
+ <id>compile</id>
+ <goals>
+ <goal>compile</goal>
+ </goals>
+ <configuration>
+ <sourceDirs>
+ <sourceDir>src/main/kotlin</sourceDir>
+ </sourceDirs>
+ </configuration>
+ </execution>
+ <execution>
+ <id>test-compile</id>
+ <goals>
+ <goal>test-compile</goal>
+ </goals>
+ <configuration>
+ <sourceDirs>
+ <sourceDir>src/test/kotlin</sourceDir>
+ </sourceDirs>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>default-compile</id>
+ <phase>none</phase>
+ </execution>
+ <execution>
+ <id>default-testCompile</id>
+ <phase>none</phase>
+ </execution>
+ <execution>
+ <id>java-compile</id>
+ <phase>compile</phase>
+ <goals>
+ <goal>compile</goal>
+ </goals>
+ </execution>
+ <execution>
+ <id>java-test-compile</id>
+ <phase>test-compile</phase>
+ <goals>
+ <goal>testCompile</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+</project>
diff --git a/examples/timer-log-kotlin/src/main/kotlin/org/acme/timer/TimerRoute.kt b/extensions/kotlin/deployment/src/main/kotlin/org/apache/camel/quarkus/kotlin/deployment/KotlinFeature.kt
similarity index 69%
copy from examples/timer-log-kotlin/src/main/kotlin/org/acme/timer/TimerRoute.kt
copy to extensions/kotlin/deployment/src/main/kotlin/org/apache/camel/quarkus/kotlin/deployment/KotlinFeature.kt
index 92fb6d4..d010a27 100644
--- a/examples/timer-log-kotlin/src/main/kotlin/org/acme/timer/TimerRoute.kt
+++ b/extensions/kotlin/deployment/src/main/kotlin/org/apache/camel/quarkus/kotlin/deployment/KotlinFeature.kt
@@ -14,14 +14,18 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.acme.timer
+package org.apache.camel.quarkus.kotlin.deployment
-import org.apache.camel.builder.RouteBuilder
+import io.quarkus.deployment.annotations.BuildStep
+import io.quarkus.deployment.builditem.FeatureBuildItem
-class TimerRoute: RouteBuilder() {
- override fun configure() {
- from("timer:foo?period=1s")
- .process { e -> e.message.body = "Hello from Kotlin!" }
- .log("\${body}")
+class KotlinFeature {
+ companion object {
+ private const val FEATURE = "camel-kotlin"
+ }
+
+ @BuildStep
+ fun feature(): FeatureBuildItem {
+ return FeatureBuildItem(FEATURE)
}
}
\ No newline at end of file
diff --git a/extensions/kotlin/pom.xml b/extensions/kotlin/pom.xml
new file mode 100644
index 0000000..360b48b
--- /dev/null
+++ b/extensions/kotlin/pom.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
+ <parent>
+ <groupId>org.apache.camel.quarkus</groupId>
+ <artifactId>camel-quarkus-build-parent</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ <relativePath>../../poms/build-parent/pom.xml</relativePath>
+ </parent>
+
+ <modelVersion>4.0.0</modelVersion>
+
+ <artifactId>camel-quarkus-kotlin-parent</artifactId>
+ <name>Camel Quarkus :: Kotlin</name>
+ <packaging>pom</packaging>
+ <modules>
+ <module>deployment</module>
+ <module>runtime</module>
+ </modules>
+
+</project>
diff --git a/examples/timer-log-kotlin/pom.xml b/extensions/kotlin/runtime/pom.xml
similarity index 52%
copy from examples/timer-log-kotlin/pom.xml
copy to extensions/kotlin/runtime/pom.xml
index 8a92642..4563cfa 100644
--- a/examples/timer-log-kotlin/pom.xml
+++ b/extensions/kotlin/runtime/pom.xml
@@ -20,29 +20,35 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-build-parent</artifactId>
+ <artifactId>camel-quarkus-kotlin-parent</artifactId>
<version>1.0.0-SNAPSHOT</version>
- <relativePath>../../poms/build-parent/pom.xml</relativePath>
</parent>
-
<modelVersion>4.0.0</modelVersion>
- <artifactId>camel-quarkus-examples-timer-log-kotlin</artifactId>
- <name>Camel Quarkus :: Examples :: Timer Log Kotlin</name>
- <description>Camel Quarkus Example :: Timer to Log Kotlin</description>
+ <artifactId>camel-quarkus-kotlin</artifactId>
+ <name>Camel Quarkus :: Kotlin :: Runtime</name>
+ <description>camel-quarkus-kotlin</description>
<properties>
- <kotlin.version>1.3.21</kotlin.version>
+ <firstVersion>1.0.0</firstVersion>
</properties>
+ <dependencyManagement>
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.camel.quarkus</groupId>
+ <artifactId>camel-quarkus-bom</artifactId>
+ <version>${project.version}</version>
+ <type>pom</type>
+ <scope>import</scope>
+ </dependency>
+ </dependencies>
+ </dependencyManagement>
+
<dependencies>
<dependency>
- <groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-timer</artifactId>
- </dependency>
- <dependency>
- <groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-log</artifactId>
+ <groupId>org.apache.camel</groupId>
+ <artifactId>camel-core-engine</artifactId>
</dependency>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
@@ -51,19 +57,10 @@
</dependencies>
<build>
- <sourceDirectory>src/main/kotlin</sourceDirectory>
<plugins>
<plugin>
<groupId>io.quarkus</groupId>
- <artifactId>quarkus-maven-plugin</artifactId>
- <executions>
- <execution>
- <id>build</id>
- <goals>
- <goal>build</goal>
- </goals>
- </execution>
- </executions>
+ <artifactId>quarkus-bootstrap-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.jetbrains.kotlin</groupId>
@@ -76,6 +73,11 @@
<goals>
<goal>compile</goal>
</goals>
+ <configuration>
+ <sourceDirs>
+ <sourceDir>src/main/kotlin</sourceDir>
+ </sourceDirs>
+ </configuration>
</execution>
<execution>
<id>test-compile</id>
@@ -83,42 +85,17 @@
<goals>
<goal>test-compile</goal>
</goals>
+ <configuration>
+ <sourceDirs>
+ <sourceDir>src/test/kotlin</sourceDir>
+ </sourceDirs>
+ </configuration>
</execution>
</executions>
+ <configuration>
+ <jvmTarget>${maven.compiler.target}</jvmTarget>
+ </configuration>
</plugin>
</plugins>
</build>
-
- <profiles>
- <profile>
- <id>native</id>
- <activation>
- <property>
- <name>native</name>
- </property>
- </activation>
- <build>
- <plugins>
- <plugin>
- <groupId>io.quarkus</groupId>
- <artifactId>quarkus-maven-plugin</artifactId>
- <executions>
- <execution>
- <id>native-image</id>
- <goals>
- <goal>native-image</goal>
- </goals>
- <configuration>
- <enableServer>false</enableServer>
- <cleanupServer>true</cleanupServer>
- <disableReports>true</disableReports>
- </configuration>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
- </profile>
- </profiles>
-
</project>
diff --git a/examples/timer-log-kotlin/src/main/kotlin/org/acme/timer/TimerRoute.kt b/extensions/kotlin/runtime/src/main/kotlin/org/apache/camel/quarkus/kotlin/RoutesDSL.kt
similarity index 61%
rename from examples/timer-log-kotlin/src/main/kotlin/org/acme/timer/TimerRoute.kt
rename to extensions/kotlin/runtime/src/main/kotlin/org/apache/camel/quarkus/kotlin/RoutesDSL.kt
index 92fb6d4..1412771 100644
--- a/examples/timer-log-kotlin/src/main/kotlin/org/acme/timer/TimerRoute.kt
+++ b/extensions/kotlin/runtime/src/main/kotlin/org/apache/camel/quarkus/kotlin/RoutesDSL.kt
@@ -14,14 +14,29 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.acme.timer
+package org.apache.camel.quarkus.kotlin
+import org.apache.camel.RoutesBuilder
import org.apache.camel.builder.RouteBuilder
-class TimerRoute: RouteBuilder() {
- override fun configure() {
- from("timer:foo?period=1s")
- .process { e -> e.message.body = "Hello from Kotlin!" }
- .log("\${body}")
+/**
+ * Functional routes definition Kotlin DSL.
+ *
+ * Example:
+ *
+ * ```
+ * fun myRoutes() = routes {
+ * from("timer:foo?period=1s")
+ * .log("\${body}")
+ * }
+ * ```
+ *
+ * In a nutshell, it makes it possible to configure routes with a lambda that acts as RouteBuilder.
+ */
+fun routes(block: RouteBuilder.() -> Unit) : RoutesBuilder {
+ return object: RouteBuilder() {
+ override fun configure() {
+ this.block()
+ }
}
-}
\ No newline at end of file
+}
diff --git a/extensions/kotlin/runtime/src/main/resources/META-INF/quarkus-extension.yaml b/extensions/kotlin/runtime/src/main/resources/META-INF/quarkus-extension.yaml
new file mode 100644
index 0000000..97390fc
--- /dev/null
+++ b/extensions/kotlin/runtime/src/main/resources/META-INF/quarkus-extension.yaml
@@ -0,0 +1,29 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+---
+name: "Camel Quarkus Kotlin"
+description: "Camel Quarkus Kotlin"
+metadata:
+ keywords:
+ - "camel"
+ - "kotlin"
+ guide: "https://quarkus.io/guides/camel"
+ categories:
+ - "integration"
+ - "alt-languages"
+ status: "preview"
diff --git a/extensions/pom.xml b/extensions/pom.xml
index 06ffb38..4569fd0 100644
--- a/extensions/pom.xml
+++ b/extensions/pom.xml
@@ -68,6 +68,7 @@
<module>jackson</module>
<module>jdbc</module>
<module>kafka</module>
+ <module>kotlin</module>
<module>log</module>
<module>mail</module>
<module>microprofile-health</module>
diff --git a/extensions/readme.adoc b/extensions/readme.adoc
index aa43ae0..e15bb4b 100644
--- a/extensions/readme.adoc
+++ b/extensions/readme.adoc
@@ -231,7 +231,7 @@ Number of Camel languages: 8 in 2 JAR artifacts (0 deprecated)
== Miscellaneous Extensions
// others: START
-Number of miscellaneous extensions: 7 in 7 JAR artifacts (0 deprecated)
+Number of miscellaneous extensions: 8 in 8 JAR artifacts (0 deprecated)
[width="100%",cols="4,1,5",options="header"]
|===
@@ -245,6 +245,8 @@ Number of miscellaneous extensions: 7 in 7 JAR artifacts (0 deprecated)
| (camel-quarkus-hystrix) | 1.0.0-M1 | Circuit Breaker EIP using Netflix Hystrix
+| (camel-quarkus-kotlin) | 1.0.0 | camel-quarkus-kotlin
+
| xref:extensions/microprofile-health.adoc[camel-quarkus-microprofile-health] | 0.3.0 | Bridging Eclipse MicroProfile Health with Camel health checks
| xref:extensions/opentracing.adoc[camel-quarkus-opentracing] | 0.3.0 | Distributed tracing using OpenTracing
diff --git a/pom.xml b/pom.xml
index c3f2aeb..0241c1c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -47,6 +47,7 @@
<xstream.version>1.4.11</xstream.version>
<snakeyaml.version>1.25</snakeyaml.version>
<xalan.version>2.7.2</xalan.version>
+ <kotlin.version>1.3.21</kotlin.version>
<maven-compiler-plugin.version>3.8.0</maven-compiler-plugin.version>
<maven.compiler.target>1.8</maven.compiler.target>
diff --git a/poms/bom-deployment/pom.xml b/poms/bom-deployment/pom.xml
index 1af509d..731332a 100644
--- a/poms/bom-deployment/pom.xml
+++ b/poms/bom-deployment/pom.xml
@@ -210,6 +210,11 @@
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
+ <artifactId>camel-quarkus-kotlin-deployment</artifactId>
+ <version>${camel-quarkus.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.camel.quarkus</groupId>
<artifactId>camel-quarkus-log-deployment</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
diff --git a/poms/bom/pom.xml b/poms/bom/pom.xml
index 3206d08..b9d2544 100644
--- a/poms/bom/pom.xml
+++ b/poms/bom/pom.xml
@@ -574,6 +574,11 @@
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
+ <artifactId>camel-quarkus-kotlin</artifactId>
+ <version>${camel-quarkus.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.camel.quarkus</groupId>
<artifactId>camel-quarkus-log</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>