Gradle - это инструмент автоматизации сборки, основанный на концепции "инкрементных сборок". Он ускоряет процесс разработки, например, собирая только те части проекта, которые были изменены. Инкрементная сборка работает путем (концептуально) отслеживания того, какие файлы были изменены, а затем использует эту информацию для определения того, что должно быть собрано. Это помогает Gradle избежать выполнения задач, в которых нет необходимости.
Gradle можно рассматривать как аналог Apache Ant или Make, но он также обладает функциями, которые обычно ассоциируются с инструментами непрерывной интеграции, такими как Jenkins: задачи могут выполняться параллельно, а задачи могут зависеть от других задач (это позволяет определить порядок выполнения задач).
Gradle состоит из различных концепций:
- Задача представляет собой нечто, что должно быть сделано; примеры включают компиляцию исходных файлов java, подготовку документации или создание jar-файла. Задача обычно выполняется путем запуска Gradle с помощью соответствующей командной строки; примеры включают "build" (для компиляции проекта) и "docs" (для создания HTML-документов).
- Конфигурация сборки определяет, как что-то должно быть сделано; например, какой компилятор должен быть использован или какие классы являются частью исходного кода Java. Примерами конфигураций сборки являются 'JavaIncremental' (конфигурация по умолчанию, использующая инкрементальные сборки) и 'JavaNoTest'.
- TaskInputs представляют входы, используемые задачами; примерами входов задач являются AntJavadocTask.createSourceJar() или JarSigningTask.signJarFile(['src/main/java', 'src/test/java'], 'signed.jar').
- TaskOutputs представляют выходные данные, создаваемые задачами; примерами выходных данных задач являются JarSigningTask.getFile() или JavaCompile.createJar().
Gradle был создан Хансом Доктером. Он выпускается под лицензией Apache 2. Первой публичной версией была 1.0, которая вышла 16 июля 2012 года.
Предварительные условия
Для того чтобы установить Gradle, вам понадобятся:
- Root-привилегии на системе, на которую вы хотите установить Gradle.
- Debian 11 'базовая система' с работающим подключением к интернету.
Обновление системы
Рекомендуется обновить систему перед тем, как вы начнёте устанавливать новые пакеты. Давайте сделаем это сейчас, выполнив команду ниже.
1 | sudo apt-get update && sudo apt-get upgrade -y |
Установка Java
Для запуска Gradle вам потребуется установленная в системе среда выполнения Java (JRE) или Java Development Kit (JDK).
- JRE - это среда выполнения, которой часто бывает достаточно для большинства проектов. Она содержит только те части Java, которые необходимы для запуска файлов .jar.
- JDK - это надмножество JRE, т.е. он включает всё из JRE плюс инструменты для разработки Java-приложений.
По умолчанию Debian поставляется с OpenJDK JDK 11. Давайте установим JDK 11 с помощью следующей команды.
1 | sudo apt install default-jdk -y |
После завершения установки выполните приведенную ниже команду, чтобы убедиться, что Java установлена правильно.
1 | java --version |
Вывод должен быть аналогичен приведенному ниже
Установка Gradle в Debian Linux
Теперь, когда наша система готова, давайте приступим к установке Gradle.
Сначала мы загрузим Gradle с помощью команды ниже. Вы можете проверить последнюю версию Gradle на странице загрузки. Замените gradle-7.5.1 на имя файла, который вы хотите загрузить.
1 | cd /tmp && wget https://services.gradle.org/distributions/gradle-7.5.1-bin.zip |
Приведенные выше команды загрузят ZIP-архив Gradle в каталог /tmp. После завершения загрузки извлеките файлы Gradle из zip-архива с помощью команды unzip.
1 | unzip gradle-*.zip |
Затем переместите извлеченные файлы в каталог /opt/gradle с помощью следующих команд.
1 2 | sudo mkdir -p /opt/gradle sudo cp -pr gradle-*/* /opt/gradle |
Используйте команду ls, чтобы просмотреть список файлов и проверить, все ли на месте.
1 | ls /opt/gradle |
Вы должны увидеть следующие каталоги внутри каталога opt: bin, init.d, lib, LICENSE, NOTICE, README.
Теперь вам нужно настроить и обновить переменные окружения PATH, чтобы исполняемые файлы Gradle были доступны из любой точки системы. Для этого мы создадим новый файл gradle в каталоге /etc/profile.d/. Добавим исполняемый файл Gradle в переменную окружения PATH.
1 | echo "export PATH=/opt/gradle/bin:${PATH}" | sudo tee /etc/profile.d/gradle.sh |
Выполните приведенную ниже команду, чтобы разрешить выполнение только что созданного скрипта.
1 | sudo chmod +x /etc/profile.d/gradle.sh |
Ваша переменная окружения PATH теперь должна содержать путь Gradle, и вы сможете использовать все исполняемые файлы в ней из любого каталога вашей системы.
Выполните команду ниже, чтобы считать обновленную переменную PATH в текущую оболочку.
1 | source /etc/profile.d/gradle.sh |
Наконец, проверьте, что Gradle установлен правильно, выполнив команду gradle с опцией -v.
1 | gradle -v |
Результат должен быть похож на приведенный ниже. Поздравляем! Gradle теперь установлен и работает на вашей системе Debian.
Проверка установки
Теперь, когда Gradle успешно установлен, давайте создадим простой проект с использованием Gradle, чтобы убедиться, что все работает нормально.
Сначала создайте новую директорию под названием gradle-demo и переместитесь в нее с помощью следующих команд. Это хорошая идея - хранить свои проекты в отдельных директориях, чтобы не было огромного беспорядка файлов и папок внутри одной директории.
1 | mkdir gradle-demo && cd gradle-demo |
Затем выполните команду init, чтобы инициализировать ваш проект. Команда gradle init используется для создания скриптов сборки Gradle. Она принимает подкоманду, которая указывает ей, какой тип проекта нужно создать. Существует несколько различных типов, одним из которых является "basic".
1 | gradle init |
Команда init выдаст вам сообщение Select type of project to generate. Нажмите 2 и Enter, чтобы выбрать тип проекта 2: application.
После нажатия клавиши Enter Gradle выдаст вопрос Select implementation language. Нажмите 3 и Enter, ничего не набирая, чтобы выбрать Java в качестве языка реализации.
Далее, в сообщении Split functionality across multiple subprojects нажмите 1, что бы выбрать только один проект приложения
Далее, в сообщении Select build script DSL, нажмите 1 и Enter, чтобы выбрать Groovy в качестве build script DSL.
Генерировать сборку (Generate build using new APIs and behavior), используя новые API и поведение? Вводим - no
Далее на вопрос Select test framework нажмите Enter, чтобы выбрать значение по умолчанию.
Далее укажите имя проекта и нажмите Enter. Вы можете ввести любое имя.
Теперь Gradle сгенерирует файл сборки на основе этих выборов. Вы можете увидеть сообщение BUILD SUCCESSFUL, когда сценарий сборки будет успешно сгенерирован. Ваш проект Gradle был успешно создан. Все работает так, как ожидалось.
Заключение
Gradle - это инструмент автоматизации сборки, который можно использовать, помимо прочего, для автоматизации процесса создания приложений для Android.
В этой статье мы показали вам, как установить Gradle на Debian. Мы надеемся, что статья была полезной.