Project

General

Profile

Actions

Инструкция по сборке Rodin » History » Revision 2

« Previous | Revision 2/3 (diff) | Next »
Denis Kildishev, 03/10/2022 04:44 PM


Инструкция по сборке Rodin

Оригинальная инструкция на английском: Building Rodin Headless

  1. Скачать репозиторий rodincore и выполнить сборку в Eclipse пользуясь другой инструкцией. Это необходимо, так как некоторые исходные файлы генерируются только после первой сборки
  2. В файле org.eventb.parent/pom.xml в поле <www-basedir> указана директория по умолчанию (/tmp/rodin-build/rodin-3.6), в которой по итогам сборки будут скопированы архивы для всех трех целевых платформ (Windows, Linux, macOS), Rodin target platform (архив, необходимый для разработки плагинов к Rodin) и update-site. При необходимости можно указать другой путь
  3. Перед сборкой нужно создать в ~/.m2/toolchains.xml файл с содержимым по шаблону org.rodinp.releng/toolchains.xml с указанием пути к jvm
  4. Для сборки требуется Java 11 и Apache Maven. Сборка выполняется следующей командой из корня репозитория: ./org.rodinp.releng/scripts/run-maven.sh. Иногда может потребоваться явно указать, какую из установленных версий Java использовать: это можно сделать с помощью переменной JAVA_HOME, пример: JAVA_HOME=/usr/local/opt/openjdk@11 ./org.rodinp.releng/scripts/run-maven.sh
  5. Если сборка прошла успешно, а по какой-то причине(?) директория <www-basedir> пуста, то требуемые архивы можно найти в следующих местах:
    • Архивы для всех трех целевых платформ: в директории org.rodinp.platform.repository/target/products
    • Rodin target platform: в директории org.rodinp.dev/target
  1. Сборка также может осуществляться вручную при помощи команды mvn install -Dversion-suffix="" "$@" # -fae|-fn на корневой папке репозитория. При этом будут запущены gui тесты. Чтобы отключить тесты при сборке можно воспользоваться аргументом
    -DskipTests.
  2. Для переноса данных с одного update_site на другой можно воспользоваться скриптом mirror.sh

Updated by Denis Kildishev over 2 years ago · 3 revisions