![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLiAzNfRHLGZkRGZkRfJ3bs92YsYTMfVmepNHLx0EROp3Z61EeJpHW4Z0MMBjVtJWd0ckW65UbM5WOHJWa5kHT20ESjBjUIF2X0hXZ0xCMx81dvRWYoNHLrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZuBnLyAzM4MTNxMTM1ATMwEjMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
1.背景
寫了這麼一段代碼
object JdbcSink extends Logging {
def writeToJdbc(df:DataFrame, sink: StreamSink, driverName: String):DataStreamWriter[Row] ={
logInfo("JDBC URL:{} NAME:{} ",url,connectorParam.getUsername)
打包的時候報錯
[ERROR] /Users/lcc/IdeaProjects/company_source/cheetah-node/cheetah-streaming/spark-structured-streaming/src/main/scala/org/apache/spark/sql/jdbc/stream/JdbcSink.scala:134: error: overloaded method value logInfo with alternatives:
[ERROR] (msg: => String,throwable: Throwable)Unit <and>
[ERROR] (msg: => String)Unit
[ERROR] cannot be applied to (String, String, String)
[ERROR] logInfo("JDBC URL:{} NAME:{} ",url,connectorParam.getUsername)
[ERROR] ^
[ERROR] one error found
這是因為把java和scala搞混了,應該用scla的列印日志,改成如下
object JdbcSink extends Logging {
def writeToJdbc(df:DataFrame, sink: StreamSink, driverName: String):DataStreamWriter[Row] ={
logInfo(s"JDBC URL:$url NAME:$connectorParam.getUsername ")