首页 > 解决方案 > 无法使用融合 CLI 设置 CLASSPATH:java.sql.SQLException:找不到适合 jdbc:oracle:thin 的驱动程序

问题描述

我想在confluent. 当我开始连接 Confluent CLI 时它不起作用。

confluent local start connect

它给出了这个错误:

Caused by: java.sql.SQLException: No suitable driver found for jdbc:oracle:thin:@10.10.10.10:1954/MYSERVICE

我停止连接并手动connect-distributed或独立启动它会给出相同的错误

./bin/connect-distributed etc/schema-registry/connect-avro-distributed.properties

当我设置CLASSPATH然后上面的代码工作正常并将数据传输到Oracle。

export CLASSPATH=/home/my_confluent/confluent-5.4.1/share/java/kafka-connect-jdbc/ojdbc6.jar

但我仍然不能对connect服务做同样的事情。

当我抬起我的confluent connect

confluent local start connect

它给出了同样的错误。

标签: oraclejdbcapache-kafkaapache-kafka-connectconfluent-platform

解决方案


Confluent CLI 使用 Golang 来启动下面的脚本,所以这可以解释为什么导出 Java 特定变量不起作用,但是,如果你export CLASSPATH=/any/path/to/jdbc-drivers/*.jar, then 在同一个终端进程中运行任何进程,它应该继承这些变量。

confluent local start connect内部调用 some exec.command("connect-distributed") 函数,因此这是一个运行的 Java 方法调用kafka-run-class.sh,它确实继承了CLASSPATH变量


推荐阅读