Что такое инструмент простой сборки Scala (sbt) и почему он используется?

#scala #sbt

#scala #sbt

Вопрос:

Я новичок в Scala, и мне нужно изучить Scala и SBT, я прочитал руководство по sbt, но я не могу понять использование sbt, для какой цели оно использовалось.После прочтения этого руководства я все еще в замешательстве, может ли кто-нибудь объяснить это простыми словами, также подскажите мне, есть ли какое-нибудь руководство по инструменту простой сборки

Ответ №1:

Когда вы пишете небольшие программы, состоящие всего из одного или двух или трех исходных файлов, тогда достаточно легко скомпилировать эти исходные файлы, набрав scalac MyProgram.scala в командной строке.

Но когда вы начинаете работать над большим проектом с десятками или, может быть, даже сотнями исходных файлов, то компилировать все эти исходные файлы вручную становится слишком утомительно. Затем вы захотите использовать инструмент сборки для управления компиляцией всех этих исходных файлов.

sbt является таким инструментом. Существуют и другие инструменты, некоторые другие хорошо известные инструменты сборки, пришедшие из мира Java, — это Ant и Maven.

Принцип его работы заключается в том, что вы создаете файл проекта, который описывает, как выглядит ваш проект; при использовании sbt этот файл будет вызван build.sbt . В этом файле перечислены все исходные файлы, из которых состоит ваш проект, наряду с другой информацией о вашем проекте. Sbt прочитает файл, а затем знает, что делать для компиляции всего проекта.

Помимо управления вашим проектом, некоторые инструменты сборки, включая sbt, могут автоматически управлять зависимостями за вас. Это означает, что если вам нужно использовать какие-то библиотеки, написанные другими, sbt может автоматически загрузить нужные версии этих библиотек и включить их в ваш проект для вас.

Комментарии:

1. Если вы хотите узнать больше о том, как использовать инструмент сборки Scala, SBT. Обратитесь к этой статье. В нем также есть ссылки на другие полезные статьи: codesynch.com/hadoop_spark_blog /…

2. Инструменты сборки для java, C и т.д. Уже есть в моей системе, так зачем scala нужен другой собственный инструмент сборки? Разве scala не может использовать ant, как любой другой язык сборки?

3. @GeoffreyAnderson потому что файл сборки sbt может содержать код scala?