【问题标题】:Scala not working in Windows 10 from command line and PowerShellScala 在命令行和 PowerShell 中无法在 Windows 10 中运行
【发布时间】:2017-03-29 08:11:52
【问题描述】:
在 Windows 10 中安装 Scala 并尝试从命令行或 PowerShell 运行它后:
C:\Program Files (x86)\scala\bin>scala
我得到以下回报:
\scala\bin\scala.bat) was unexpected at this time.
我意识到安装路径有点不幸(包含空间),但我认为他们已经在版本之前解决了这个问题。
任何想法如何让它工作?
【问题讨论】:
标签:
scala
powershell
command-line
windows-10
【解决方案1】:
找到要在此处发布的答案:
https://issues.scala-lang.org/browse/SI-7821
最后一条评论解决了这个问题:
"必须对"scala\bin"目录下的每个.bat文件进行修改,该文件由scala.bat、scalac.bat、scaladoc.bat和scalap.bat组成。
在每个文件的底部,您都会找到这两个子例程,即。 ":add_cpath" 和 ":set_home"
在:add_cpath中改变
if "%_TOOL_CLASSPATH%"=="" (
set _TOOL_CLASSPATH=%~1
) else (
set _TOOL_CLASSPATH=%_TOOL_CLASSPATH%;%~1
)
进入
if "%_TOOL_CLASSPATH%"=="" (
set _TOOL_CLASSPATH="%~1"
) else (
set _TOOL_CLASSPATH="%_TOOL_CLASSPATH%;%~1"
)
set _TOOL_CLASSPATH=%_TOOL_CLASSPATH:~1,-1%
(注意引号)
而在 :set_home 改变
set _BIN_DIR=
for %%i in (%~sf0) do set _BIN_DIR=%_BIN_DIR%%%~dpsi
set _SCALA_HOME=%_BIN_DIR%..
进入
set _BIN_DIR=
for %%i in ("%~sf0") do set _BIN_DIR=%_BIN_DIR%%%~dpsi
set _SCALA_HOME=%_BIN_DIR%..
(这里也要注意引号)
【解决方案2】:
将 Scala bins 的路径添加到系统 Path 变量并从任何地方作为“scala”运行不是更容易吗?或者,您可以运行 Scala。 sh 使用 Git Bash 或使用 Windows Subsystem for Linux 中的 Bash 命令提示符。