Question

I'm trying to configure a build system for Scala with SublimeText, but I am having some difficulty. I have tried both of the following:

{
    "shell_cmd": "scala",
    "working_dir": "${project_path:${folder}}",
    "selector": "source.scala"
}

{
    "cmd": ["/path/to/bin/scala", "$file_name"],
    "working_dir": "${project_path:${folder}}",
    "selector": "source.scala",
    "shell": true
}

Both of these attempts produce the same failed output - it seems to start up the interactive Scala shell rather than running my script. Any advice?

Was it helpful?

Solution

The answer that worked turned out to be very close to the second answer - apparently I'm not supposed to open up a new shell. If someone can clarify when to set "shell": true in the comments, that would be really helpful.

{
    "cmd": ["/path/to/bin/scala", "$file_name"],
    "working_dir": "${project_path:${folder}}",
    "selector": "source.scala"
}

OTHER TIPS

{
    "cmd": ["C:/Program Files (x86)/scala/bin/scala.bat", "$file_name"],
    "working_dir": "${project_path:${folder}}",
    "selector": "source.scala"
}

This worked for me. replace C:/ with your own path.

In Packages/Scala/Scala.sublime-build, add this:

{
    "cmd": ["[PATH TO SCALA]", "$file"],
    "working_dir": "${project_path:${folder}}",
    "selector": "source.scala"
}

Replace the [PATH TO SCALA] with the path of where scala interpreter is located in your system. Do a "which scala" to find out.

This works for me:

{
    "cmd": ["scala", "$file"],
    "working_dir": "${project_path:${folder}}",
    "selector": "source.scala",
    "shell": true
}

given you set the system PATH thing:

Variable: %PATH%
Value: C:\Program Files (x86)\scala\bin

in my case I didn't install Scala or SublimeText, I just used the zip. But this code worked for me to compile the .scala files from SublimeText3 on Windows.

{"cmd": ["C:/Scala/scala-2.13.3/bin/scalac.bat", "$file"],
"working_dir": "$file_path",
"selector": "source.scala",
"encoding":"utf-8",
"file_patterns": "*.scala",
"shell": true}

You can create it or download it and put it in the directory Sublime Text Build 3 ###\Data\Packages\User

Build System For Scala :

OSX - (Mac)

Use the below:

{
    "cmd": ["/opt/homebrew/bin/scala", "$file_name"],
    "working_dir": "${project_path:${folder}}",
    "selector": "source.scala"
}

Path to delete the build:

/Library/Application Support/Sublime Text/Packages/User

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top