当前位置: 首页 > 知识库问答 >
问题:

Kafka Connect添加db.timezone属性后找不到ZoneRules提供程序

宓诚
2023-03-14

我正在分布式模式下运行Kafka Connect(Confluent),最近添加了数据库。timezone属性设置为JDBC源连接器。这样做之后,当我加载连接器时,会看到以下错误:

java.lang.NoClassDefFoundError:无法初始化Java . time . zone . zonerulesprovider类\ n \ tat Java . time . zoneregion . ofid(zoneregion . Java:120)\ n \ tat Java . time . zoneid . of(zoneid . Java:411)

这是从JDBCSourceConnectorConfig中的以下代码中发生的:

https://github.com/confluentinc/kafka-connect-jdbc/blob/master/src/main/java/io/confluent/connect/jdbc/source/JdbcSourceConnectorConfig.java#L807

如果我登录到Kafka Connect框并运行java-version,我会得到:

openjdk version "1.8.0_262"
OpenJDK Runtime Environment (build 1.8.0_262-b10)
OpenJDK 64-Bit Server VM (build 25.262-b10, mixed mode)

如果我创建一个如下所示的小型 Java 程序并在该框上运行它,它可以正常工作:

import java.time.ZoneId;
import java.time.zone.ZoneRulesProvider;
import java.util.TimeZone;

public class TestTime {
  public static void main(String[] args) {
    String dbTimeZone = "America/New_York";
    System.out.println(TimeZone.getTimeZone(ZoneId.of(dbTimeZone)));
    System.out.println(ZoneRulesProvider.getAvailableZoneIds());
  }
}

那么为什么 confluent/kafka 连接会中断呢?为什么它找不到ZoneRulesProvider

共有1个答案

姜聪
2023-03-14

在我的服务器上重新启动kafka连接后,这个问题似乎已经消失了。

 类似资料:
  • 我有三个实体。(在本例中,我使用xxx作为占位符) 我已经用 然而,我能够做到: 只适用于它们各自存储库中的一个实体。当我试图为另外两个实体这样做时,我遇到了这个问题: “派生查询无效!找不到类型xxx的属性id!” 我能够运行它并得到正确的结果。但是为什么我得到了两个实体的这个错误,而不是另一个? 我以完全相同的方式设置实体和它们的存储库。唯一的区别是,在存储库不返回任何错误的实体中,我将该实体

  • 我正在尝试使用JPA和EclipseLink来持久化元素。所以我创建了一个类来持久化 等等。我创建了一个类来“使用”: 然后,我有以下persistence.xml: 但是,即使我改变了属性,我也有同样的错误: 线程"main"中的异常javax.persistence.PeristenceException:没有名为MyPU的EntityManager的持久性提供程序(当调用工厂=Persist

  • 问题内容: 我正在尝试将Entity Framework与MySQL配合使用,但出现上述错误。我安装了最新的MySQL连接器。 完整错误为: 但是,我找不到任何建议说明您如何在“ entityFramework”部分中进行注册的内容。 其他一些帖子(例如)建议将提供程序添加到该 部分中,如下所示: 但这不起作用,因为它声称名称是重复的。而且,如果我实际上遍历了,我可以看到最后一个是MySQL提供程

  • 但是,我在Github文档的任何地方都找不到关于要填充的endpoint和数据的适当概述。 以下字段为必填字段: 发行人->? 我到处都找不到Jwks uri。如有任何帮助,我们将不胜感激。

  • 你好Stackoverflow社区, 在尝试编译使用bouncycastle安全提供程序的maven项目时,我得到了以下错误:我知道必须对jar进行签名,因此我将此添加到pom.xml中以防止编译错误: 基于此(bouncycastle provider找不到算法所需的类),我添加了以下内容:,并且在公共静态void main中添加了具有以下内容的提供程序:。 不幸的是,这没有奏效。对于如何实现上

  • 当我尝试启动应用程序时,在将Spring Boot从2.1.5升级到2.2.2之后,我收到了这个异常消息。 当我刚刚升级到SpringBoot2.2.1时,这个异常不会发生。 添加依赖项后: 它适用于2.2.2。 所以我的问题是,为什么在这次Spring Boot升级之后突然需要手动添加依赖项。