私はScala SparkアプリケーションでJDBCを使用しようとしていますが、私はsbtを使ってコンパイルしています。しかし、私がClass.forName("com.mysql.jdbc.Driver")
行を追加すると、ClassNotFoundExceptionがスローされます。SparkがSBTからJDBCドライバを見つけられない
マイSBTファイルはこれです:
name := "SparkApp"
version := "1.0"
scalaVersion := "2.11.8"
libraryDependencies += "org.apache.spark" %% "spark-core" % "2.1.0"
libraryDependencies += "org.apache.spark" %% "spark-sql" % "2.1.0"
libraryDependencies += "com.databricks" %% "spark-csv" % "1.5.0"
libraryDependencies += "org.apache.spark" %% "spark-mllib" % "2.1.0"
libraryDependencies += "mysql" % "mysql-connector-java" % "6.0.5"
限り、私は最後の行は、私は、JDBCドライバを追加する必要があるはずですが、それは動作していないようですすべてであると言うことができるように。私もClass.forName("com.mysql.jdbc.Driver").newInstance()
を試しましたが、結果は同じです。したがって、問題はjdbcクラスが正しく追加されていないと仮定します。
DBへの書き込みはどうですか?私の最終目標は、私が持っているDataFrameをMySQLのテーブルに書き込むことでした。私はこのようにしようとしましたが、 "No suitable driver"エラーを受け取りました: 'val prop = new java.util.Properties() prop.setProperty(" user "、" username ") prop.setProperty(" – cogm
書き込みも同様に動作するはずですが、書き込みは同じでなければなりません。同じオプション。どのようにコードを実行しますか?提出する場合は、依存関係が利用可能であることを確認してください。 – sgvd
パッケージの引数を追加し、ドライバの問題を解決したようです。最初は廃止されたエラーが出ましたが、私は 'com.mysql.cj.jdbc.Driver'に変更しなければなりませんでした。 sbtの依存関係が十分であると考えていたでしょうか。ありがとう! – cogm