teradata jdbc jar没有装入火花

时间:2015-12-07 17:29:00

标签: apache-spark teradata

我正在尝试在spark中加载teradata jar文件但无法加载它。我像这样开始火花壳:

spark-shell --jars ~/*.jar --driver-class-path ~/*.jar

在那里我有一个名为terajdbc4.jar

的jar文件

当火花壳开始......我这样做

scala> sc.addJar("terajdbc4.jar")
15/12/07 12:27:55 INFO SparkContext: Added JAR terajdbc4.jar at http://1.2.4.4:41601/jars/terajdbc4.jar with timestamp 1449509275187

scala> sc.jars
res1: Seq[String] = List(file:/home/user1/spark-cassandra-connector_2.10-1.0.0-beta1.jar)

scala> 

但它不在罐子里。为什么它仍然缺失?

编辑:

确定。我得到了加载的jar,但是我收到了这个错误:

java.lang.ClassNotFoundException: com.teradata.jdbc.TeraDriver

我执行以下操作:

scala> sc.jars
res4: Seq[String] = List(file:/home/user/terajdbc4.jar)

scala> import com.teradata.jdbc.TeraDriver
import com.teradata.jdbc.TeraDriver

scala> Class.forName("com.teradata.jdbc.TeraDriver")
res5: Class[_] = class com.teradata.jdbc.TeraDriver

然后这个:

val jdbcDF = sqlContext.load("jdbc", Map(
  "url" -> "jdbc:teradata://dbinstn, TMODE=TERA, user=user1, password=pass1",
  "dbtable" -> "db1a.table1a",
  "driver" -> "com.teradata.jdbc.TeraDriver"))

然后我明白了:

java.lang.ClassNotFoundException: com.teradata.jdbc.TeraDriver

1 个答案:

答案 0 :(得分:0)

spark-shell --jars ~/*.jar --driver-class-path ~/*.jar

请参阅Using wildcards in java classpath
不支持 * .jar 等通配符,请尝试添加特定的jar文件路径。