前言,是的,我已经看过并阅读过之前提出的多个非常相似的问题,但由于我缺乏经验和几乎不存在的java知识,我真的不明白我的情况发生了什么。
所以这就是:
我正在尝试将R连接到Mac OS X 10.11.6上的红移服务器。
我为初学者安装了rJava和RJDBC软件包。我已经下载了最新的jdbc驱动程序,并且运行的是最新版本的Java(1.8)。
以下是我正在使用的代码:
library("rJava")
library("RJDBC")
download.file('https://s3.amazonaws.com/redshift-downloads/drivers/RedshiftJDBC42-1.1.17.1017.jar','RedshiftJDBC42-1.1.17.1017.jar')
drv <- JDBC("com.amazon.redshift.jdbc42.Driver", "/Users/edwards/Documents/RedshiftJDBC42-1.1.17.1017.jar", identifier.quote="`")
我得到的错误:
Error in .jfindClass(as.character(driverClass)[1]) : class not found
我在其他主题中尝试了一些故障排除技巧,但仍无法解决此问题的根源。我在SQLWorkbench J中连接到服务器没有问题,但我选择的分析工具是R,我真的想解决这个驱动程序问题,这样我就可以连接到服务器了。
我的java -version返回:
java version "1.8.0_101"
Java(TM) SE Runtime Environment (build 1.8.0_101-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.101-b13, mixed mode)
使用:
.jclassLoader()$setDebug(1L)
在运行检索驱动程序的行时,我能够看到这一点:
RJavaClassLoader: added '/Users/edwards/Documents/RedshiftJDBC42-1.1.17.1017.jar' to the URL class path loader
RJavaClassLoader: adding Java archive file '/Users/edwards/Documents/RedshiftJDBC42-1.1.17.1017.jar' to the internal class path
RJavaClassLoader: added '/Library/Frameworks/R.framework/Versions/3.3/Resources/library/RJDBC/java/RJDBC.jar' to the URL class path loader
RJavaClassLoader: adding Java archive file '/Library/Frameworks/R.framework/Versions/3.3/Resources/library/RJDBC/java/RJDBC.jar' to the internal class path
RJavaClassLoader@2666e815.findClass(com.amazon.redshift.jdbc42.Driver)
我再一次对这些事情并不精通而且我很失落,所以如果需要任何其他信息或者您认为我的问题已在另一个帖子中得到解决,请告诉我!
提前致谢!