1.8. 已知问题


查看以下已知问题以了解红帽构建的 Quarkus 3.15 限制和临时解决方案。

1.8.1. 在 Windows 上缺少 Snappy 的原生库

在 Red Hat build of Quarkus 3.15 中,在 Windows 上运行使用 Snappy 压缩库的应用程序会因为缺少原生库而产生错误。

当尝试压缩 Windows 环境中带有 Snappy 的数据时,用户可能会遇到类似以下示例的错误消息。

错误信息示例

...
org.eclipse.microprofile.reactive.messaging.Message$5@1e8dc267 from channel 'test' was not sent to Kafka topic 'test' - nacking message: org.apache.kafka.common.KafkaException: org.xerial.snappy.SnappyError: [FAILED_TO_LOAD_NATIVE_LIBRARY] no native library is found for os.name=Windows and os.arch=x86_64
...
Copy to Clipboard Toggle word wrap

临时解决方案:目前还没有可用的临时解决方案。计划在以后的发行版本中解决这个问题。

在 Red Hat build of Quarkus 3.15 中,添加了 productized Quarkus TLS CLI 插件。目前,开发工具不会从 maven.repostory.redhat.com 中发现 Quarkus CLI 插件。因此,Quarkus CLI 默认无法找到此插件。

临时解决方案:

  • 要启用 Quarkus CLI 来解析插件,请将 JBang 配置为使用 maven.repository.redhat.com

    您可以通过在项目的根目录中使用包含以下内容的 jbang.properties 文件,该文件仅在该项目中使用 Quarkus CLI,或者在 ~/.jbang 目录中用于全局配置:

    run.repos=central,https://maven.repository.redhat.com/ga/
    Copy to Clipboard Toggle word wrap
  • 如果已安装 JBang,您也可以使用以下命令全局设置它:

    jbang config set run.repos central,https://maven.repository.redhat.com/ga/
    Copy to Clipboard Toggle word wrap

如需更多信息,请参阅 QUARKUS-5183 和链接问题。

在 Red Hat build of Quarkus 3.15 中,运行 update 命令只更新红帽构建的 Quarkus 平台(com.redhat.quarkus.platform)中包含的 BOM。如果版本的一部分、quarkus-qpid-jms-bomquarkus-operator-sdk-bom,则可以包括 quarkus-camel-bom 和 quarkus-camel-bom 和 quarkus-cxf-bom

但是,该命令不会更新与上游社区版本关联的 BOM 版本。如果您的项目同时包含红帽构建的 Quarkus 和上游 BOM,则此问题可能会导致 Quarkus 和上游 BOM 组合不兼容。

update 命令示例

$ mvn com.redhat.quarkus.platform:quarkus-maven-plugin:3.15.7.redhat-00001:update -Dmaven.repo.local=<path-to-local-repo>
Copy to Clipboard Toggle word wrap

有问题的 pom.xml 文件示例

<properties>
    <quarkus.platform.artifact-id>quarkus-bom</quarkus.platform.artifact-id>
    <quarkus.platform.group-id>com.redhat.quarkus.platform</quarkus.platform.group-id>
    <quarkus.platform.version>3.15.7.redhat-00001</quarkus.platform.version>
</properties>
<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>${quarkus.platform.group-id}</groupId>
            <artifactId>${quarkus.platform.artifact-id}</artifactId>
            <version>${quarkus.platform.version}</version>
        </dependency>
        <dependency>
            <groupId>io.quarkus.platform</groupId>
            <artifactId>quarkus-amazon-services-bom</artifactId>
            <version>3.2.12.Final</version> 
1

        </dependency>
    </dependencies>
</dependencyManagement>
Copy to Clipboard Toggle word wrap

1
没有更新版本。

临时解决方案:手动更新版本号。

在 Red Hat build of Quarkus 3.15 中,使用 quarkus/mandrel-for-jdk-21-rhel8:23.1 红帽构建的 Quarkus Native Builder 镜像在启用了 FIPS 的环境中的原生模式中初始化 RSA 密码会生成 NullPointerException (NPE)错误。

这个问题只在启用了 FIPS 的原生模式下发生,它不会影响禁用 FIPS 的原生模式。在启用了 FIPS 的 Red Hat build 时,它也不会影响 JVM 模式。

注意

启用 FIPS 的环境中不支持原生模式。

错误信息示例

2024-10-17 10:45:01,931 ERROR [io.qua.ver.htt.run.QuarkusErrorHandler] (executor-thread-1) HTTP Request to /repro failed, error id: 9b1f5dbb-058b-4c9b-9377-f3acc0a6cba5-1: java.lang.RuntimeException: java.lang.NullPointerException
    at org.acme.ReproResource.init(ReproResource.java:38)
...
Copy to Clipboard Toggle word wrap

临时解决方案:

  1. 如果存在,从 application.properties 文件中删除以下属性:

    quarkus.security.security-providers=SunPKCS11
    Copy to Clipboard Toggle word wrap
  2. application.properties 文件中添加以下属性,以在运行时初始化 ReproResource 类:

    quarkus.native.additional-build-args=--initialize-at-run-time=org.acme.ReproResource
    Copy to Clipboard Toggle word wrap
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2026 Red Hat
返回顶部