没有为jdbc找到合适的驱动程序:amazonaws

我正在尝试使用JDBC连接到amazon athena。 由于我没有在maven上找到AthenaDriver存储库,我在github上自己创建了它。 基本上我正在做的是这样的:

pom.xml中:

 mvn-rep maven repository https://github.com/raphael-psr/maven-repository/raw/master/   com.amazonaws.athena.jdbc AthenaJDBC41 1.1.0  

Java的:

 class.forName("com.amazonaws.athena.jdbc.AthenaDriver"); Properties properties = new Properties(); properties.setProperty("user", user); properties.setProperty("password", password); properties.setProperty("aws_credentials_provider_class", "amazon.AmazonCredentialsProvider"); Connection connection = DriverManager.getConnection("jdbc:awsathena://athena." + region + ".amazonaws.com:443", properties); 

提出了一个例外:

java.sql.SQLException:没有为jdbc找到合适的驱动程序:amazonaws://athena.us-east-1.amazonaws.com:443

谁知道它可能是什么?

  1. 也许你想下载JDBC驱动程序: https : //s3.amazonaws.com/athena-downloads/drivers/AthenaJDBC41-1.1.0.jar

  2. 您可以将它安装在您自己的maven存储库中:

     mvn install:install-file -Dfile=/home/users/User01/Documents/AthenaJDBC41-1.1.0.jar -DgroupId=com.amazonaws.athena.jdbc -DartifactId=athenaJDBC -Dpackaging=jar 
  3. 然后你可以在你的pom.xml中引用它:

在此处输入图像描述

如果这对您有所帮助,请告诉我。

PS:不确定为什么代码格式化在我的计算机中不起作用。 我尝试了三种不同的浏览器,我期待同样的问题。

从https://s3.amazonaws.com/athena-downloads/drivers/AthenaJDBC41-1.1.0.jar下载Jar

将jar添加到您自己的maven存储库中

 mvn install:install-file -Dfile=/home/sumit/Downloads/AthenaJDBC41-1.1.0.jar -DgroupId=com.amazonaws.athena.jdbc -DartifactId=athenaJDBC -Dversion=1.1.0 -Dpackaging=jar 

-Dfile值更改为下载的jar路径。 如果需要更新-Dversion

添加依赖项到您的pom.xml

  com.amazonaws.athena.jdbc athenaJDBC 1.1.0  

我在Clojure中开发Spark作业时,自己使用驱动程序的JDBC42版本的2.0.2来解决这个问题。 尽管存在这些差异,我认为答案将会转换,我从Spark Unable中找到了JDBC Driver 。

我相信您需要将Properties对象中的driver属性设置为Athena Driver类,即

 properties.setProperty("driver", "com.simba.athena.jdbc.Driver"); 

这对于2.0.2版本是正确的。 在你的情况下应该是

 properties.setProperty("driver", "com.amazonaws.athena.jdbc.AthenaDriver"); 

我不知道为什么Class.forName是不够的。 我还必须构建自己的Maven包。