С чего начать?
Scala без предварительной установки
Чтобы сразу начать экспериментировать со Scala, используйте "Scastie" в своем браузере. Scastie — это онлайн-площадка, где можно поэкспериментировать с примерами Scala, чтобы увидеть, как все работает, с доступом ко всем компиляторам Scala и опубликованным библиотекам.
Scastie поддерживает как Scala 3, так и Scala 2, но по умолчанию используется Scala 3.
Установка Scala на компьютер
Установка Scala означает установку различных инструментов командной строки, таких как компилятор Scala и инструменты сборки. Рекомендуется использовать инструмент установки "Coursier", который автоматически устанавливает все зависимости, но также возможно каждый инструмент установить по отдельности вручную.
Использование Scala Installer (рекомендованный путь)
Установщик Scala — это инструмент Coursier,
основная команда которого называется cs
.
Он гарантирует, что в системе установлены JVM и стандартные инструменты Scala.
Установите его в своей системе, следуя следующим инструкциям.
Наряду с JVM программа установки cs
также устанавливает полезные инструменты командной строки:
- JDK (если его еще нет)
- Инструмент сборки sbt
- Ammonite, улучшенный REPL
- scalafmt, средство форматирования кода Scala
scalac
(компилятор Scala)scala
(Scala REPL и средство запуска сценариев)
Дополнительная информация о cs
доступна по ссылке.
...или вручную
Для компиляции, запуска, тестирования и упаковки проекта Scala нужны только два инструмента: Java 8 или 11 и sbt. Чтобы установить их вручную:
- если не установлена Java 8 или 11, загрузите Java из Oracle Java 8, Oracle Java 11 или AdoptOpenJDK 8/11. Подробную информацию о совместимости Scala/Java см. в разделе Совместимость с JDK.
- установить sbt
Создание проекта "Hello World" с помощью sbt
Для создания проекта можно использовать командную строку или IDE.
Использование командной строки
sbt — это инструмент сборки для Scala. sbt компилирует, запускает и тестирует Scala код (Он также может публиковать библиотеки и выполнять множество других задач).
Чтобы создать новый проект Scala с помощью sbt:
cd
в пустую папку.- Запустите команду
sbt new scala/scala3.g8
, чтобы создать проект Scala 3. Она извлекает шаблон проекта из GitHub, а также создаёт папкуtarget
. - При появлении запроса назовите приложение
hello-world
. Это создаст проект под этим названием. - Будет сгенерировано следующее:
- hello-world
- project (sbt использует эту папку для собственных файлов)
- build.properties
- build.sbt (sbt's build definition file)
- src
- main
- scala (здесь весь Scala code)
- Main.scala (Точка входа в программу) <-- это все, что сейчас нужно
Дополнительную документацию по sbt можно найти в соответствующей главе и в официальной документации sbt.
Открытие проекта в IDE
Для открытия проекта желательно использовать IDE. Самые популярные из них — IntelliJ и VSCode. Оба предлагают богатые возможности, но также можно использовать множество других редакторов.
Использование IntelliJ
- Загрузите и установите IntelliJ Community Edition.
- Установите plugin Scala, следуя инструкциям по установке.
- Откройте файл
build.sbt
, затем выберите Open as a project.
Использование VSCode с metals
- Скачайте VSCode.
- Установите расширение Metals из Marketplace.
- Затем откройте каталог, содержащий файл
build.sbt
(это должен быть каталогhello-world
). Когда будет предложено, выберите Import build.
Metals — это "языковой сервер Scala", обеспечивающий поддержку написания кода Scala в VS Code и других редакторах, таких как Atom, Sublime Text и других, с использованием протокола Language Server.
Под капотом Metals взаимодействует со средством сборки с помощью Build Server Protocol (BSP). Подробнее о том, как работает Metals, см. "Написание Scala в VS Code, Vim, Emacs, Atom и Sublime Text с помощью Metals".
Исходный код
Просмотрите эти два файла в своей IDE:
- build.sbt
- src/main/scala/Main.scala
При запуске проекта на следующем шаге, конфигурация в build.sbt будет использована для запуска кода в src/main/scala/Main.scala.
Запуск Hello World
Код в Main.scala
можно запускать из IDE, если удобно.
Но также можно запустить приложение из терминала, выполнив следующие действия:
cd
вhello-world
.- Запустить
sbt
. Эта команда открывает sbt-консоль. - В консоле введите
~run
.~
является необязательным, но заставляет sbt повторно запускаться при каждом сохранении файла, обеспечивая быстрый цикл редактирования/запуска/отладки. sbt также создаст директориюtarget
, которую пока можно игнорировать.
После окончания экспериментирования с проектом, нажмите [Enter]
, чтобы прервать команду run
.
Затем введите exit
или нажмите [Ctrl+D]
, чтобы выйти из sbt и вернуться в командную строку.
Ссылки: