Buck (программное обеспечение)

редактировать
Buck
Разработчик (и) Facebook
Первый выпуск17 апреля 2013 г.; 7 лет назад (17.04.2013)
S настольный выпуск 2019.10.17.01 / 17 октября 2019 г.; 12 месяцев назад (17.10.2019)
Репозиторий Измените это в Викиданных
Написано наJava
Операционная система Кросс-платформенная
Лицензия Apache License 2.0
Веб-сайтbuck.build Измените в Викиданных

Buck - это многоязычная система сборки, разработанная и используемая Facebook. Он был разработан для создания небольших многократно используемых модулей, состоящих из кода и ресурсов в монорепозитории, и поддерживает C ++ (Objective-C, Swift ), Shell, Java (Kotlin, Groovy ), Python, Lua, OCaml, Rust, Go и другие исходные коды в качестве входных данных для двоичной цели на соответствующих целевых платформах, таких как IOS, Android, .NET и Java VM среды выполнения. Buck лицензирован в соответствии с лицензией Apache License 2.0..

Buck требует явного объявления зависимостей и обеспечивает это путем использования дерева символических ссылок. Поскольку все зависимости являются явными, а Buck имеет направленный ациклический граф всех исходных файлов и целей сборки, Buck может выполнять инкрементную перекомпиляцию, создавая только целевые объекты, расположенные ниже по течению файлов, которые были изменены. Buck вычисляет ключ для каждой цели, который является хешем содержимого всех файлов, от которых он зависит. Он сохраняет сопоставление этого ключа со встроенной целью в кэше сборки. Предполагая, что все цели являются детерминированными функциями содержимого своих зависимостей, вы можете поделиться этим кешем сборки между разработчиками и непрерывной интеграцией (CI), поскольку Buck поддерживает HTTP Cache API.

См. Также
Ссылки
Внешние ссылки

.

Последняя правка сделана 2021-05-13 03:42:59
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте