【发布时间】:2019-02-04 03:47:59
【问题描述】:
我在 Zeppelin 中使用 Spark 解释器在段落中运行了一个脚本。它有一个导入,导入的名称可以从全局命名空间和函数中解析,但不能从类中的方法解析。
这在我的计算机安装的 Scala (2.12) 上运行良好,但在 Zeppelin (Scala 2.11) 中不起作用。
import java.util.Calendar
def myFun: String = {
// this works
return Calendar.getInstance.toString
}
class MyClass {
def myFun(): String = {
// this doesn't
return Calendar.getInstance.toString
// this works
return java.util.Calendar.getInstance.toString
}
}
错误信息如下:
import java.util.Calendar
myFun: String
<console>:15: error: not found: value Calendar
return Calendar.getInstance.toString
我错过了什么?
【问题讨论】:
-
1.11 ?你确定不是 2.11 吗?
-
是的,为错字道歉!
-
如果无法访问 Spark/Zeppelin,我推测这是该系统如何解释 Scala 脚本的错误。
import语句应该将java.util.Calendar带入范围,就像Calendar一样; 每个版本的Scala都应该尊重这一点! -
您使用哪个版本的 zeppelin?我在 master 分支中没有看到这个问题。
-
@zjffdu 我在运行 0.8.0 时遇到了这个问题
标签: scala apache-spark apache-zeppelin