我无法让Scala Spark shell在Windows 7上正常运行。
每当我启动它时,都会收到以下错误:The root scratch dir: /tmp/hive on HDFS should be writable. Current permissions are: rw-rw-rw-
我经历了很多SO答案和一些博客,但到目前为止没有任何帮助。
我正在运行Spark 2.1.0。我已将%HADOOP_HOME%
设置为目录,winutils.exe
中有%HADOOP_HOME%\bin
。
Spark位于c:\Spark
(没有子目录),%SPARK_HOME%
设置为该目录。
c:\tmp\hive
拥有777权限,如果我运行winutils ls tmp
。
从shell测试目录的写入权限表明它是可写的。见这里:
scala> import java.io.File
import java.io.File
scala> val f = new File("/tmp")
f: java.io.File = \tmp
scala> f.canWrite()
res0: Boolean = true
scala> val f2 = new File("/tmp/hive")
f2: java.io.File = \tmp\hive
scala> f2.canWrite()
res1: Boolean = true
sbt安装在C:\Program Files (x86)\sbt\
,%SBT_HOME%
设置为该目录。
%JAVA_HOME%
设置为C:\Java\jdk1.8.0_60\
。
C:\Program Files (x86)\sbt\bin;
,%SPARK_HOME%\bin;
和%HADOOP_HOME%\bin;
在路径中。
我从命令行运行shell,以管理员身份运行。
在所有内容加载并抛出异常后,没有加载任何spark库并且sc
不可用。
我做错了什么?