SublimeText 2 и файл scala.sublime-build - PullRequest
11 голосов
/ 13 ноября 2011

Я пытаюсь использовать Sublime Text 2 для редактирования и запуска скрипта Scala в 64-битной Windows 7 с использованием Scala 2.9.1. Я создал следующий файл scala.submline-build, пытаясь следить за тем, что происходит, когда я ввожу следующее из командной строки:

C:\work\Scala>scala ScalaGreetings.scala
Greetings from Scala...
C:\work\Scala>

Содержимое scala.sublime-build:

{
    "cmd": ["C:\\scala-2.9.1.final\\bin\\scala.bat $File"]
}

С простым скриптом Scala, загруженным на вкладку Sublime Text, нажатие клавиши F7 приводит к загрузке и запуску интерпретатора Scala, но скрипт не выполняется должным образом. В окне Build появится следующее:

Welcome to Scala version 2.9.1.final (Java HotSpot(TM) 64-Bit Server VM, Java    1.7.0_01).
Type in expressions to have them evaluated.
Type :help for more information.

scala> 

Имея это в виду, я буду признателен за вашу помощь и обратную связь со следующими вопросами;

1.) Могу ли я выполнить скрипт Scala из Sublime Text 2 и отобразить его вывод в окне Build после успешной интерпретации скрипта?

2.) Если предположить, что ответ на поставленный выше вопрос - да, то, что отсутствует и / или неверно в моем текстовом файле scala.sublime-text?

3.) Есть ли какие-либо дополнительные ресурсы, на которые я должен обратить внимание при использовании Sublime Text 2 с Scala, особенно в отношении файлов Sublime Project для Scala?

Ответы [ 6 ]

4 голосов
/ 26 февраля 2012

попробуйте эту настройку сборки

{
    "cmd": ["C:\\scala-2.9.1.final\\bin\\scala.bat","$file"]
}

Я мог бы решить с этим.

4 голосов
/ 24 февраля 2012

Попробуйте использовать это вместо:

{
    "cmd": ["C:\\scala-2.9.1.final\\bin\\scala.bat", "$File"]
}
1 голос
/ 24 мая 2013

Это введение в Mac OS X, но я не думаю, что есть большая разница для Windows и особенно для Linux.

В Scala у вас есть два варианта.

Первый вариант использует интерпретатор Scala scala:

{
    "cmd": ["/usr/local/scala/bin/scala", "$file"], 
    "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
    "selector": "source.scala"
}

В моем случае папка scala, которую я скачал, помещается в /usr/local/.


Второй вариант - это скомпилировать ваш исходный код. Это немного сложнее.

{
    "cmd": ["build_scala.sh", "$file"], 
    "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
    "selector": "source.scala"
}

Конечно, вы должны добавить build_scala.sh файл сценария bash, e. г. в /usr/bin/:

#!/bin/bash          
# compiles all java files within directory and runs first argument
for file in *.scala
do
echo "Compiling $file"
/usr/local/scala/bin/scalac $file
done
echo "Running $1"
/usr/local/scala/bin/scala $1

Проверьте скрипт в своем терминале, набрав which build_scala.sh

1 голос
/ 15 марта 2013

У меня были некоторые проблемы со сборкой .scala-файлов, и я заметил, что мне нужно было установить для параметра shell значение true, так что вот мои build_systems

"build_systems": 
[
    {
        "name": "Compile",
        "cmd": ["scalac", "Main.scala"],
        "shell": true,
        "working_dir": "<path to project folder>"
    },
    {
        "name": "Run",
        "cmd": ["scala", "Main.scala"],
        "shell": true,
        "working_dir": "<path to project folder>"
    }

]

Я также всегда устанавливаю параметр working_dir, но, думаю, это не так важно.

Итак, чтобы ответить на ваши вопросы:

  1. Да, да, вы можете увидеть результат в возвышенном состоянии после выполнения сценария.

  2. Надеюсь, мой конфиг выше поможет вам в этом.

  3. Я настоятельно рекомендую вам попробовать плагин SublimeREPL .

1 голос
/ 01 марта 2013
{
  "cmd": ["C:\\scala-2.9.1.final\\bin\\scala.bat", "$file"],
  "selector": "source.scala"
}

Обратите внимание, что, поскольку имена переменных чувствительны к регистру, $file должен быть в нижнем регистре.

Настройка selector помогает Sublime автоматически выбирать систему сборки.

Для получения дополнительной информации проверьте ссылку Sublime Text на системы сборки .

0 голосов
/ 07 октября 2014

Для окон добавьте scala path в вашу переменную окружения Установите файл Scala.sublime-build следующим образом:

{
"cmd": ["scala.bat", "$file"],
"selector": "source.scala"
}
...