Я пытаюсь использовать некоторый код Scala в Zeppelin 0.8.0 с интерпретатором Spark:
%spark
import scala.beans.BeanProperty
class Node(@BeanProperty val parent: Option[Node]) {
}
Но, похоже, импорт не учитывается
import scala.beans.BeanProperty
<console>:14: error: not found: type BeanProperty
@BeanProperty val parent: Option[Node]) {
^
РЕДАКТИРОВАТЬ: Я обнаружил, что работает следующий код:
class Node(@scala.beans.BeanProperty val parent: Option[Node]) {
}
Это также отлично работает:
def loadCsv(CSVPATH: String): DataFrame = {
import org.apache.spark.sql.types._
//[...] some code
val schema = StructType(
firstRow.map(s => StructField(s, StringType))
)
//[…] some code again
}
Так что я думаю, что все работает нормально, если он импортирован между фигурными скобками или напрямую указан с помощью path.to.package.Class
при использовании.
ВОПРОС: Как импортировать данные вне определения класса / функции?