运行sparkclr-submit.cmd失败

时间:2016-08-08 08:06:40

标签: apache-spark mobius

我试图在Windows环境中使用VS2012运行一个简单的spark clr程序作为本地调试模式。

请找到我做的以下步骤,

  1. 从以下页面下载v1.6.100并解压缩到我的D盘 https://github.com/Microsoft/Mobius/releases
  2. 在我的D盘中,文件夹看起来像这样, d:\ SparkClr \火花clr_2.10-1.6.100

    1. 设置以下环境变量,
      SPARK_HOME = D:\ SparkClr \ spark-clr_2.10-1.6.100 \ runtime
      SPARKCLR_HOME = D:\ SparkClr \ spark-clr_2.10-1.6.100 \ runtime
      JAVA_HOME = C:\ Program Files \ Java \ jdk1.8.0_92
      HADOOP_HOME = D:\ HadoopDirectory(在D:\ HadoopDirectory \ bin中存在winutils.exe)

    2. 已下载的sparkclr nuget包

    3. 为了在我的本地VS程序中的app.config中设置“CSharpBackendPortNumber”,我需要按调试模式运行,https://github.com/Microsoft/Mobius/blob/master/notes/running-mobius-app.md#debug-mode

      但是当我从D:\ SparkClr \ spark-clr_2.10-1.6.100 \ runtime \ scripts

      运行'sparkclr-submit.cmd debug'时

      我收到以下异常,

      D:\SparkClr\spark-clr_2.10-1.6.100\runtime\scripts>sparkclr-submit.cmd debug
      '"D:\SparkClr\spark-clr_2.10-1.6.100\runtime\bin\load-spark-env.cmd"' is not rec
      ognized as an internal or external command,
      operable program or batch file.
      SPARKCLR_JAR=spark-clr_2.10-1.6.100.jar
      Exception in thread "main" java.lang.NoClassDefFoundError: scala/collection/Seq
              at org.apache.spark.deploy.csharp.CSharpRunner.main(CSharpRunner.scala)
      Caused by: java.lang.ClassNotFoundException: scala.collection.Seq
              at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
              at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
              at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
              at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
              ... 1 more
      

      你能否告诉我我是否遗失了什么?

      由于

1 个答案:

答案 0 :(得分:1)

SPARK_HOME环境变量应该指向Spark目录。你有它指向Mobius目录。