В этом руководстве вы увидите, как создавать проекты Scala из шаблона. Это можно использовать как отправную точку для своих собственных проектов. Мы будем использовать sbt, де-факто инструмент сборки для Scala. sbt компилирует, запускает и тестирует ваши проекты среди других связанных задач. Мы предполагаем, что вы знаете, как пользоваться терминалом.
Установка
- Убедитесь, что у вас установлена Java 8 JDK (также известная как 1.8)
- Запустите
javac -version
в командной строке и убедитесь, что выдаетсяjavac 1.8.___
- Если у вас нет версии 1.8 или выше, установите JDK
- Запустите
- Установите sbt
Создание проекта
cd
в пустую папку.- Запустите следующую команду
sbt new scala/hello-world.g8
. Она извлекает шаблон ‘hello-world’ из GitHub. Она также создаст папкуtarget
, которую пока можно игнорировать. - При появлении запроса назовите приложение
hello-world
. Это создаст проект под названием “hello-world”. - Давайте взглянем на то, что только что было сгенерировано:
cd
в пустую папку.- Запустите следующую команду
sbt new scala/scala3.g8
. Она извлекает шаблон ‘scala3’ из GitHub. Она также создаст папкуtarget
, которую пока можно игнорировать. - При появлении запроса назовите приложение
hello-world
. Это создаст проект под названием “hello-world”. - Давайте взглянем на то, что только что было сгенерировано:
- hello-world
- project (sbt использует эту папку для установки и настройки плагинов и зависимостей)
- build.properties
- src
- main
- scala (весь Scala код находится в этой папке)
- Main.scala (точка входа в программу) <-- это все, что вам сейчас нужно
- build.sbt (файл определения сборки для sbt)
После того как вы создадите свой проект, sbt создаст дополнительные каталоги target
для сгенерированных файлов.
Вы можете игнорировать их.
Запуск проекта
cd
вhello-world
.- Запустите
sbt
. Эта команда запустит sbt console. - Запустите
~run
.~
опциональна и заставляет sbt перекомпилировать и повторно запускать проект при каждом сохранении изменений в файле проекта для быстрого цикла редактирование/запуск/отладка. sbt также сгенерит директориюtarget
, которую можно игнорировать.
Доработка кода
- Откройте файл
src/main/scala/Main.scala
в вашем любимом текстовом редакторе. - Измените “Hello, World!” на “Hello, New York!”
- Если вы не остановили команду sbt, то должны увидеть “Hello, New York!”, напечатанным в консоли.
- Вы можете продолжить вносить изменения и видеть результаты доработки в консоли.
Добавление зависимости
Немного меняя тему, давайте посмотрим, как использовать опубликованные библиотеки для добавления дополнительных функций в наши приложения.
- Откройте
build.sbt
и добавьте следующую строку:
libraryDependencies += "org.scala-lang.modules" %% "scala-parser-combinators" % "1.1.2"
Здесь libraryDependencies
представляет набор зависимостей,
и с помощью +=
мы добавляем зависимость scala-parser-combinators
к набору зависимостей, которые sbt будет загружать при запуске.
Теперь в любом файле Scala можно импортировать классы, объекты и т.д. из scala-parser-combinators
с помощью обычного импорта.
Вы можете найти больше опубликованных библиотек на Scaladex, каталоге библиотек Scala,
где вы также можете скопировать указанную выше информацию о зависимостях для вставки в свой файл build.sbt
.
Примечание для Java библиотек: Для обычной библиотеки Java следует использовать только один знак процента (
%
) между названием организации и именем артефакта. Двойной процент (%%
) — это специализация Scala библиотек. Подробнее об этом можно узнать в документации sbt.
Следующие шаги
Перейдите к следующему учебнику из серии getting started with sbt и узнайте, как тестировать Scala c sbt и ScalaTest в командной строке.
или
- Продолжайте изучать Scala в интерактивном режиме на Scala Exercises.
- Узнайте о возможностях Scala с помощью небольших статей, ознакомившись с нашим туром по Scala.