我正在通过胖客户端连接到apache phoenix,并且已经向--files提供了phoenix-client.jar,但是执行者仍然找不到驱动程序。
答案 0 :(得分:0)
所以问题是如何在驱动程序和执行程序节点上自动将Spark类加载驱动程序类?
在所有添加到其类路径的jar中寻找java.sql.Driver
文件用户META-INF
目录。该文件包含驱动程序类名称,spark读取并单独加载它们。
在phoenix客户端jar中,META-INF
中的java.sql.Driver文件丢失,因此我创建了内容为java.sql.Driver
的文件org.apache.phoenix.jdbc.PhoenixDriver
放在META-INF
目录下,并重新创建jar。
通过放置此更新的jar,spark能够自行加载驱动程序。