1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/apache-avro

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
BUILD.md 5 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 10.03.2025 18:32 6f586e4

Инструкции сборки Apache Avro

Требования

Перед сборкой Avro должны быть установлены следующие пакеты:

  • Java: 11, 17 и 21 с соответствующей конфигурацией toolchain, Maven 3.9.6 или выше, protobuf-compiler
  • PHP: php8, phpunit, php8-gmp
  • Python 3: 3.7 или выше, tox (tox установит остальные зависимости при необходимости)
  • C: gcc, cmake, asciidoc, source-highlight, Jansson, pkg-config
  • C++: cmake 3.7.2 или выше, g++, flex, bison, libboost-dev
  • C#: .NET Core 2.2 SDK
  • JavaScript: Node 12.x+, nodejs, npm
  • Ruby: Ruby 2.7 или выше, ruby-dev, gem, bundler, snappy
  • Perl: Perl 5.24.1 или выше, gmake, Module::Install, Module::Install::ReadmeFromPod, Module::Install::Repository, Math::BigInt, JSON::MaybeXS, Try::Tiny, Regexp::Common, Encode, Object::Tiny, Compress::Zlib, Error::Simple, Test::More, Test::Exception, Test::Pod
  • Apache Ant 1.7
  • md5sum, sha1sum, используемые целевым объектом dist верхнего уровня

Использование Docker

Использование Docker-образа со всеми требованиями уже установленными может быть проще. Если у вас установлен Docker на вашей машине, вы можете собирать внутри контейнера, запустив:

./build.sh docker
docker@539f6535c9db:~/avro$ cd lang/java/
docker@539f6535c9db:~/avro/lang/java$ ./build.sh test
[INFO] Scanning for projects...

При завершении процесса вы окажетесь в оболочке, работающей внутри контейнера. Первое создание образа может занять некоторое время (20 минут или более), так как зависимости должны быть скачаны и установлены. Однако последующие вызовы будут намного быстрее благодаря использованию закэшированного образа.Рабочий каталог в контейнере монтируется из вашего хоста. Это позволяет вам получать доступ к файлам вашего дерева разработки Avro из Docker-контейнера.

Есть некоторые дополнительные переменные окружения DOCKER_, описанные в build.sh, которые можно использовать для взаимодействия с образом с помощью скрипта сборки. Некоторые примеры:

# Перестроение Docker-образа без использования кеша сборки.
DOCKER_BUILD_XTRA_ARGS="--no-cache" ./build.sh docker

# Создание Docker-образа с конкретным тегом (например, для RC или POC)
DOCKER_IMAGE_NAME="avro-build:1.10.1-rc1" ./build.sh docker

# Выполнение команды и выход.
DOCKER_RUN_ENTRYPOINT="mvn --version" ./build.sh docker

Разработка внутри контейнера (Devcontainer Visual Studio Code)

Требования:

Полезные ссылки:

Сборка

После установки требуемых компонентов (или из Docker-контейнера), файл build.sh можно использовать следующим образом:

./build.sh test # запускает тесты для всех языков
./build.sh dist # создаёт все файлы выпуска в папке dist/
./build.sh clean # удаляет все сгенерированные артефакты
```## Тестирование

Тестирование выполняется с использованием того же Docker-контейнера,
что и в шаге сборки. Разница заключается в том, что он выполнит чистый запуск полного набора тестов:

```bash
./build.sh docker-test

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/apache-avro.git
git@api.gitlife.ru:oschina-mirror/apache-avro.git
oschina-mirror
apache-avro
apache-avro
main