Kafka Connect:找不到合适的驱动程序

el3*_*323 2 postgresql apache-kafka apache-kafka-connect confluent-platform

我正在尝试使用 JDBC-sink 连接器将 Kafka 与 Postgres Sink 一起使用。

例外:

INFO Unable to connect to database on attempt 1/3. Will retry in 10000 ms. (io.confluent.connect.jdbc.util.CachedConnectionProvider:91)
java.sql.SQLException: No suitable driver found for jdbc:postgresql://localhost:5432/casb
at java.sql.DriverManager.getConnection(DriverManager.java:689)
    at java.sql.DriverManager.getConnection(DriverManager.java:247)
    at io.confluent.connect.jdbc.util.CachedConnectionProvider.newConnection(CachedConnectionProvider.java:85)
    at io.confluent.connect.jdbc.util.CachedConnectionProvider.getValidConnection(CachedConnectionProvider.java:68)
    at io.confluent.connect.jdbc.sink.JdbcDbWriter.write(JdbcDbWriter.java:56)
    at io.confluent.connect.jdbc.sink.JdbcSinkTask.put(JdbcSinkTask.java:69)
    at org.apache.kafka.connect.runtime.WorkerSinkTask.deliverMessages(WorkerSinkTask.java:495)
    at org.apache.kafka.connect.runtime.WorkerSinkTask.poll(WorkerSinkTask.java:288)
    at org.apache.kafka.connect.runtime.WorkerSinkTask.iteration(WorkerSinkTask.java:198)
    at org.apache.kafka.connect.runtime.WorkerSinkTask.execute(WorkerSinkTask.java:166)
    at org.apache.kafka.connect.runtime.WorkerTask.doRun(WorkerTask.java:170)
    at org.apache.kafka.connect.runtime.WorkerTask.run(WorkerTask.java:214)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at java.lang.Thread.run(Thread.java:748)
Run Code Online (Sandbox Code Playgroud)

Sink.properties:

name=test-sink
connector.class=io.confluent.connect.jdbc.JdbcSinkConnector
tasks.max=1
topics=fp_test
connection.url=jdbc:postgresql://localhost:5432/casb
connection.user=admin
connection.password=***
auto.create=true
Run Code Online (Sandbox Code Playgroud)

我已经设定 plugin.path=/usr/share/java/kafka-connect-jdbc

/usr/share/java/kafka-connect-jdbc我有以下文件:

kafka-connect-jdbc-4.0.0.jar, postgresql-9.4-1206-jdbc41.jar,sqlite-jdbc-3.8.11.2.jar和其他一些 jars 基本上是与 confluent 一起打包的。

然后我下载了 postgres-jdbc 驱动程序 jar postgresql-42.2.2.jar,将其复制到同一文件夹中并再次尝试。还是一样的例外。

请帮我解决这个问题。

el3*_*323 6

设置plugin.path=/usr/share/javaCLASSPATH=/usr/share/java/kafka-connect-jdbc/解决了问题。