【问题标题】:Launch Spark-Shell (Scala) from Windows and Set Working Directory Path从 Windows 启动 Spark-Shell (Scala) 并设置工作目录路径
【发布时间】:2017-09-21 17:19:35
【问题描述】:

我已经使用 RStudio 的 sparklyr 包安装了 Spark,并通过以下方式返回了路径:

# library(sparklyr)
# spark_home_dir()

现在我想从 Windows 命令 shell 启动 spark-shell,这工作正常。

start C:\\Users\\eyeOfTheStorm\\AppData\\Local\\rstudio\\spark\\Cache\\spark-2.0.0-bin-hadoop2.7\\bin\\spark-shell

但是当我尝试将工作目录设置为我的桌面以便我可以从那里读取文件时,使用:load 指向工作目录时它并没有正确指向。

start C:\\Users\\eyeOfTheStorm\\AppData\\Local\\rstudio\\spark\\Cache\\spark-2.0.0-bin-hadoop2.7\\bin\\spark-shell :load C:\\Users\\eyeOfTheStorm\\Desktop\\WorkingDir

从 Scala 来看,这应该确认工作目录为桌面...

def pwd = System.getProperty("user.dir"); println(pwd)

但它只返回C:\Users\eyeOfTheStorm。我希望它返回C:\\Users\\eyeOfTheStorm\\Desktop。知道如何在单个 Windows 命令中执行此操作吗?

【问题讨论】:

    标签: windows scala apache-spark command-line


    【解决方案1】:

    在您午餐的 repl 会话中,输入以下行:

    scala> System.setProperty("user.dir", "C:\\Users\\eyeOfTheStorm\\Desktop")
    

    查看文档here

    【讨论】:

      【解决方案2】:

      JVM 启动时的当前工作目录 (cwd) 将是该 JVM 在其余生中的 cwd。它不能通过更改系统属性来更改。所以 7kemZmani 的解决方案是行不通的。

      只需 cd 进入预期的工作目录启动 shell

      cd C:\my\working\dir
      start "$SPARK_HOME\bin\spark-shell"
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-12-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-12-29
        相关资源
        最近更新 更多