sbt — интерактивный инструмент сборки для проектов на Scala, Java и других JVM-языках; его исходный код распределён по нескольким репозиториям GitHub.
scala/scala
Компилятор Scala 2, стандартная библиотека и спецификация языка, а также рекомендации по внесению изменений в кодовую базу Scala 2.
- Звёзды
- 14,539
- Форки
- 3,262
- Открытые issues
- 25
- Последний коммит
- 3 дня назад
Что это?
В этом репозитории находится исходный код Scala 2: стандартная библиотека, компилятор и спецификация языка. Здесь ведётся разработка Scala 2; Scala 3 разрабатывается в отдельном репозитории.
Кодовая база разделена на исходные деревья library, reflect и compiler, а также вспомогательные модули: REPL, scaladoc, scalap и параллельный тестовый фреймворк partest. Сборка выполняется с помощью sbt и использует бутстрэп-процесс, в котором компилятор пересобирается с помощью самого себя.
Ошибки Scala 2 отслеживаются в отдельном репозитории scala/bug. Участникам предлагается подписать Scala CLA и открывать pull request из форка этого репозитория.
Ключевые возможности
- 01Содержит исходный код стандартной библиотеки Scala 2, компилятора и спецификации языка.
- 02Сборка выполняется с помощью sbt; доступны команды для компиляции, запуска REPL и публикации локально.
- 03Включает REPL, инструмент документирования scaladoc, декомпилятор class-файлов scalap и тестовый фреймворк partest.
- 04Поддерживает бутстрэп-сборку, при которой компилятор компилирует сам себя.
- 05Наборы тестов включают partest, тесты JUnit и ScalaCheck.
Сценарии использования
- Внесение исправлений и новых возможностей в стандартную библиотеку или компилятор Scala 2.
- Сборка локального дистрибутива Scala 2 для тестирования изменений компилятора.
- Изучение реализации компилятора и стандартной библиотеки Scala 2.
- Изучение исходного кода спецификации языка.
Быстрый старт
- 1
Установите Java SDK (базовая версия — 8; более новые версии, например 17 или 21, также подходят для локальной разработки)
- 2
Установите sbt
- 3
Запустите сеанс sbt из каталога проекта
sbt - 4
Скомпилируйте все подпроекты в сеансе sbt
compile
Что важно знать
- В этом репозитории находятся исходный код компилятора, библиотеки и спецификаций Scala 2; он предназначен для участников разработки, а не для конечных пользователей.
- Windows не имеет надежной поддержки, и может потребоваться Cygwin.
- Большинство изменений следует направлять в 2.13.x, поскольку версия 2.12.x поддерживается лишь в минимальном объеме.
Темы
Частые вопросы
- Что такое scala?
- Компилятор Scala 2, стандартная библиотека и спецификация языка, а также рекомендации по внесению изменений в кодовую базу Scala 2. В этом репозитории находится исходный код Scala 2: стандартная библиотека, компилятор и спецификация языка. Здесь ведётся разработка Scala 2; Scala 3 разрабатывается в отдельном репозитории.
- scala можно использовать бесплатно? Какая у него лицензия?
- scala распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- scala всё ещё поддерживается?
- Активно поддерживается. Последний коммит в scala — 4 нояб. 2026 г..
- Для чего можно использовать scala?
- Внесение исправлений и новых возможностей в стандартную библиотеку или компилятор Scala 2. Сборка локального дистрибутива Scala 2 для тестирования изменений компилятора. Изучение реализации компилятора и стандартной библиотеки Scala 2. Изучение исходного кода спецификации языка.
- Как установить scala?
- Установите Java SDK (базовая версия — 8; более новые версии, например 17 или 21, также подходят для локальной разработки) Установите sbt Запустите сеанс sbt из каталога проекта: sbt Скомпилируйте все подпроекты в сеансе sbt: compile
- Где скачать scala?
- Исходный код и инструкции по установке — на GitHub: https://github.com/scala/scala
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Pharo — чисто объектно-ориентированный язык программирования в духе Smalltalk и живая среда разработки со встроенной IDE и инструментами уровня ОС.
Odin — универсальный язык системного программирования с ориентацией на данные, встроенной стандартной библиотекой и позиционированием как альтернатива C.
Zen C — системный язык с удобным высокоуровневым синтаксисом, который компилируется в читаемый GNU C11 и работает с производительностью C.
Платформа NVIDIA для CUDA на Rust: runtime-крейты для хоста и модели SIMT и Tile для написания GPU-ядер на Rust.
Компилятор и стандартная библиотека Scala 3, также известные как Dotty, — эталонная реализация языка Scala 3.