Основным сборочным инструментом является команда ya make
Команды сборки интегрированы в универсальную утилиту ya
. Утилита предлагает широкий спектр функций и параметров командной строки для адаптации процесса сборки под различные требования проекта.
Запуск ya
без параметров выводит справку:
Yet another build tool.
Usage: ya [--precise] [--profile] [--error-file ERROR_FILE] [--keep-tmp]
[--no-logs] [--no-report] [--no-tmp-dir] [--print-path] [--version]
[-v]
Options:
--precise show precise timings in log
--profile run python profiler for ya binary
--error-file ERROR_FILE
--keep-tmp
--no-logs
--no-report
--no-tmp-dir
--print-path
--version
-v, --verbose-level
Available subcommands:
dump Repository related information
gc Collect garbage
gen-config Generate default ya config
ide Generate project for IDE
java Java build helpers
make Build and run tests
To see more help use -hh/-hhh
package Build package using json package description in the release build type by default.
style Run styler
test Build and run all tests
ya test is alias for ya make -A
tool Execute specific tool
Examples:
ya test -tt Build and run small and medium tests
ya test -t Build and run small tests only
ya dump debug Show all items
ya test Build and run all tests
ya dump debug last Upload last debug item
ya [базовые опции] Команда [подкоманда] [опции команды]
Базовые опции:
--precise
— отображает точные временные метки в логе.--profile
— запускает профайлер cProfile для бинарного файлаya
.--error-file ERROR_FILE
— указывает путь к файлу, в который будут направлены сообщения об ошибках.--keep-tmp
— сохраняет временные файлы после выполнения сборки.--no-logs
— отключает сохранение логов в файл.--no-report
— отключает создание отчетов.--no-tmp-dir
— не создает временную директорию при выполнении.--print-path
— выводит путь к исполняемому файлуya
и завершает работу.--version
— выводит информацию о версии утилиты.-v
,--verbose-level
— настраивает уровень подробности выводимых сообщений на экран.
Команды:
analyze_make.md
— анализирует время выполнения сборки.dump
— набор подкоманд для контроля различных этапов сборки.gc
— выполняет сборку мусора.gen-config
— генерирует конфигурацию по умолчанию дляya
.make
— производит сборку и запускает тесты.package
— создает пакет, используя JSON-описание пакета.project
— создает или изменяет файлya.make
проекта.style
— запускает утилиты для проверки стиля кода.test
— собирает и выполняет все тесты (является аналогомya make -A
).tool
— исполняет определенный инструмент.
Следующие опции пока не работают, но предусмотрены для реализации в будущем:
ide
— набор подкомад для генерации проект для различных IDE.java
— набор подкоманд для контроля различных этапов сборки Java-кода.
Для получения более детальной помощи по каждой команде и ее параметрам используйте опции -h
, -hh
или -hhh
после соответствующей команды.
Это позволит просмотреть расширенное описание и примеры использования.
Примеры:
- Запуск тестов только малого и среднего размера:
ya test -tt
- Запуск только малых тестов:
ya test -t
- Показать все запуски
ya
:ya dump debug
- Запуск всех тестов:
ya test
- Собрать отладочную информацию о последнем запуске
ya
:ya dump debug last
ya
является платформо-независимой утилитой и может быть запущена на большинстве операционных систем, включая Linux, macOS, и Windows.
Для запуска ya
в Windows без указания полного пути ее можно добавить в переменную окружения PATH
.
Для Linux/Bash можно использовать следующую команду:
echo "alias ya='~/yatool/ya'" >> ~/.bashrc
source ~/.bashrc
ya
использует файлы конфигурации в формате TOML
, которые должны быть размещены в корне проекта или в специально выделенной директории.
Более с подробной информацией про конфигурационные файлы можно ознакомиться