在 Databricks 中使用 scala 代码时无法调用 Notebook

Unable to call Notebook when using scala code in Databricks

我遇到的情况是我能够从单独的 CMD 中成功 运行 Azure Databricks 中的以下代码片段。

%run ./HSCModule

但是 运行当将该段代码与其他在包下导入的 Scala 代码包含在一起时出现以下错误。

import java.io.{File, FileInputStream} 
import java.text.SimpleDateFormat 
import java.util{Calendar, Properties} 
import org.apache.spark.SparkException
import org.apache.spark.sql.SparkSession 
import scala.collection.JavaConverters._
import scala.util._

ERROR = :168: error: ';' expected but '.' found. %run ./HSCModule

仅供参考 - 我也使用过 dbutils.notebook.run,但仍然面临同样的问题。

您不能在同一个单元格中混合使用 %run%pip 等魔术命令和 Scala/Python 代码。 Documentation says:

%run must be in a cell by itself, because it runs the entire notebook inline.

所以你需要把这个神奇的命令放到一个单独的单元格中。