1.6. 已知问题


1.6.1. 当编译原生项目时 NoClassDefFoundError

编译原生项目可能会导致 NoClassDefFoundError 如下:

Caused by: java.lang.NoClassDefFoundError: io/netty/handler/codec/socksx/v5/Socks5InitialRequest
at java.base/jdk.internal.misc.Unsafe.ensureClassInitialized0(Native Method)
at java.base/jdk.internal.misc.Unsafe.ensureClassInitialized(Unsafe.java:1160)
at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.classinitialization.ClassInitializationSupport.ensureClassInitialized(ClassInitializationSupport.java:177)
... 55 more
Caused by: java.lang.ClassNotFoundException: io.netty.handler.codec.socksx.v5.Socks5InitialRequest
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)

其原因是 netty-codec-socksquarkus-qpid-jms 扩展中排除,camel-quarkus-amqp 依赖于它。

临时解决方案
您可以通过手动添加 netty-codec-socks depencency 来避免 errror。

1.6.2. AArch64 系统上 Quarkus 的问题

在 AArch64 系统上当前存在 Quarkus 3.8 的问题和限制。如需更多信息,请参阅 Red Hat build of Quarkus 3.8 发行注记:

1.6.3. Websocket + Knative 无法使用 HTTP2

我们支持使用 Knative 支持 camel-quarkus-grpccamel-vertx-websocket

gRPC 需要 HTTP2 (您可以在 Knative 上找到有关如何启用它的说明:HTTP2)。

不幸的是,带有 Knative 的 Websockets 无法用于 HTTP2 (请参阅 OpenShift Container Platform 中的 Ingress Operator)。

因此,如果您有一个应用程序旨在接受 WebSocket 连接,则必须允许使用 HTTP/2 协议,或者其它客户端将无法升级到 WebSocket 协议。

1.6.4. 其他已知问题

camel-quarkus-jackson-avro 的 quarkus 原生编译失败

如果您尝试编译使用 camel-quarkus-jackson-avro 扩展到原生代码的 Camel Quarkus 应用程序,则编译会失败,并显示 UnsupportedFeatureException 错误。

作为临时解决方案,您可以使用 parameter - Dquarkus.native.additional- build-args=--initialize-at-run-time=org.avro.file.DataFileWriter 构建应用程序,或将 该配置属性添加到 src/main/resources/application.properties 文件中。

如需更多信息,请参阅客户门户网站中的 "Quarkus 原生编译 camel-quarkus-jackson-avro 失败 "。(需要登录)

smallrye-metrics 移到 camel-quarkus-micrometer 需要手动注册 bean

如果您要从 smallrye-metrics 迁移到 micrometer,您可能需要手动将一些 Bean 定义为有范围。

smallrye-metrics 中,为指标注册的类(例如,@COUNTED@METRIC),但不注册为有范围 Bean。这不会在 微主题中发生

主题中,您需要手动注册通过 CDI 访问的 Bean,例如添加 @Dependent 注解。

原生不支持 camel-quarkus-snmp
在红帽构建的 Apache Camel for Quarkus 中,我们仅在 JVM 模式中支持 camel-quarkus-snmp 组件。
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2026 Red Hat
返回顶部