ОШИБКА Остановка из-за ошибки (org.apache.kafka.connect.cli.ConnectStandalone) java.lang.NoClassDefFoundError: io / debezium / util / IoUtil - PullRequest
0 голосов
/ 20 февраля 2019

Я пытаюсь подключить свою базу данных SQL Server к kafka на windows, я скачал файлы jar Debezium, они находятся в папке с именем debezium-connector-sqlserver, вот как это выглядит: Папка Kafka , Папка Debezium

Я также добавил эту строку plugin.path=C:\\current_kafka_2.12-2.0.0\\debezium-connector-sqlserver в connect-standalone.properties, именно туда я помещаю все файлы jar, которые я скачал с Debezium.

Я также создал файл с именем connect-mssql.properties, и я поместил это в него.

name=inventory-connector
connector.class=io.debezium.connector.sqlserver.SqlServerConnector
tasks.max=2
database.hostname=DESKTOP-LMJGRO0
database.port=1433
database.user=sa
database.password=password
database.dbname=Source
database.history.kafka.bootstrap.servers=localhost:9092
database.history.kafka.topic=test
table.whitelist=dbo.guinea_pig_source

Теперь, когда я пытаюсь запустить это. \ Bin \ windows \ connect-standalone. \ Config \ connect-standalone.properties. \ Config \ connect-mssql.properties

Iполучить следующую ошибку:

[2019-02-20 17:18:39,794] ERROR Stopping due to error (org.apache.kafka.connect.cli.ConnectStandalone)
java.lang.NoClassDefFoundError: io/debezium/util/IoUtil
        at io.debezium.connector.sqlserver.Module.<clinit>(Module.java:19)
        at io.debezium.connector.sqlserver.SqlServerConnector.version(SqlServerConnector.java:29)
        at org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader.versionFor(DelegatingClassLoader.java:346)
        at org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader.versionFor(DelegatingClassLoader.java:351)
        at org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader.getPluginDesc(DelegatingClassLoader.java:328)
        at org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader.scanPluginPath(DelegatingClassLoader.java:309)
        at org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader.scanUrlsAndAddPlugins(DelegatingClassLoader.java:240)
        at org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader.registerPlugin(DelegatingClassLoader.java:232)
        at org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader.initPluginLoader(DelegatingClassLoader.java:201)
        at org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader.initLoaders(DelegatingClassLoader.java:178)
        at org.apache.kafka.connect.runtime.isolation.Plugins.<init>(Plugins.java:61)
        at org.apache.kafka.connect.cli.ConnectStandalone.main(ConnectStandalone.java:77)
Caused by: java.lang.ClassNotFoundException: io.debezium.util.IoUtil
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at org.apache.kafka.connect.runtime.isolation.PluginClassLoader.loadClass(PluginClassLoader.java:104)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        ... 12 more

1 Ответ

0 голосов
/ 13 марта 2019

Все файлы плагинов должны находиться в подкаталоге «plugin.path =».Например, если путь к плагину:

plugin.path=F:/connect-plugins/

Создать каталог F: / connect-plugins / mssql-debezium с следующими файлами:

  • debezium-connector-sqlserver-0.9.2.Final.jar
  • debezium-core-0.9.2.Final.jar
  • mssql-jdbc-6.4.0.jre8.jar
...