Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019
Используйте Azure Pipelines для автоматизации сборки, тестирования и развертывания приложений Java. В этой статье объясняется, как настроить конвейер для проектов Java с помощью таких средств, как Maven, Gradle или Ant. Вы также узнаете, как развернуть приложение в службах Azure, таких как Служба приложений, Функции или Kubernetes.
Использование конвейера для:
- Создайте проект с помощью Maven, Gradle или Ant.
- Выполнение тестов и средств анализа кода.
- Опубликуйте приложение с помощью конвейера и Azure Artifacts.
- Разверните приложение в Служба приложений Azure, Функции Azure или Служба Azure Kubernetes.
Если вы работаете над проектами Android, см. статью "Сборка, тестирование и развертывание приложений Android".
Предварительные условия
Продукт | Требования |
---|---|
Azure DevOps | - Проект Azure DevOps. — способность запуска потоков на хостинговых агентах Microsoft. Вы можете приобрести параллельное задание или запросить уровень "Бесплатный". — Базовые знания о YAML и Azure Pipelines. Дополнительные сведения см. в разделе Создайте ваш первый конвейер. Разрешения - : — Чтобы создать конвейер: необходимо быть в группе Участников, и у группы должно быть разрешение создать конвейер сборки установлено на "Разрешить". Члены группы "Администраторы проектов" могут управлять конвейерами. — Для создания подключений к службам необходимо иметь роль администратора или создателя для подключений служб. |
Сайт GitHub | — учетная запись GitHub. - Подключение службы GitHub для авторизации Azure Pipelines. |
Лазурный | Подписка Azure |
Продукт | Требования |
---|---|
Azure DevOps | - Проект Azure DevOps. — Самостоятельно размещённый агент. Для создания см. раздел Самостоятельные агенты. — Базовые знания о YAML и Azure Pipelines. Дополнительные сведения см. в разделе Создайте ваш первый конвейер. Разрешения - : — Чтобы создать конвейер: необходимо быть в группе Участников, и у группы должно быть разрешение создать конвейер сборки установлено на "Разрешить". Члены группы "Администраторы проектов" могут управлять конвейерами. — Для создания подключений к службам необходимо иметь роль администратора или создателя для подключений служб. |
Сайт GitHub | — учетная запись GitHub. - Подключение службы GitHub для авторизации Azure Pipelines. |
Лазурный | Подписка Azure |
Создание репозитория GitHub
Сделайте форк следующего репозитория в вашем аккаунте GitHub.
https://github.com/MicrosoftDocs/pipelines-java
Создание конвейера
Войдите в свою организацию Azure DevOps и перейдите в проект.
Перейдите к конвейерам и выберите "Создать конвейер" или "Создать конвейер" при создании первого конвейера в проекте.
Выполните действия мастера, начиная с выбора GitHub в качестве расположения исходного кода. Возможно, вас могут перенаправить на GitHub для входа. Для этого введите учетные данные GitHub.
Выберите репозиторий. Вы можете перенаправиться на GitHub, чтобы установить приложение Azure Pipelines. В этом случае выберите "Утвердить" и "Установить ", чтобы продолжить.
При отображении вкладки "Настройка конвейера " выберите Maven, Gradle или Ant в зависимости от способа сборки кода.
Файл
azure-pipelines.yml
, содержащий определение конвейера, создается в репозитории и открывается в редакторе YAML. Конвейер можно настроить, добавив дополнительные задачи или изменив существующие задачи. Дополнительные сведения о задачах сборки см. в разделе "Сборка кода".После завершения редактирования
azure-pipelines.yml
нажмите кнопку "Сохранить и запустить".Чтобы зафиксировать файл в репозитории
azure-pipelines.yml
, нажмите кнопку "Сохранить и снова запустить ".
Выберите задачу, чтобы наблюдать за работой вашего конвейера в действии.
Перейдите в коллекцию и выберите проект.
Выберите конвейеры и выберите "Создать конвейер" или "Создать конвейер" при создании первого конвейера в проекте.
Выполните действия мастера, выбрав GitHub Enterprise Server в качестве расположения исходного кода.
Используйте существующее подключение службы GitHub или создайте новый.
Чтобы создать подключение к службе, выполните приведенные действия.
- Выберите "Подключиться к GitHub Enterprise Server".
- Введите URL-адрес GitHub Enterprise Server.
- Введите личный маркер доступа GitHub Enterprise Server. Если у вас нет личного маркера доступа, его можно создать в учетной записи GitHub Enterprise Server. Дополнительные сведения см. в статье «Создание личного токена доступа».
Выберите репозиторий. Вы можете перенаправиться на GitHub, чтобы установить приложение Azure Pipelines. В этом случае выберите " Утвердить" и "Установить".
При отображении вкладки "Настройка конвейера " выберите Maven, Gradle или Ant в зависимости от способа сборки кода.
Файл
azure-pipelines.yml
, содержащий определение конвейера, создается в репозитории и открывается в редакторе YAML. Конвейер можно настроить, добавив дополнительные задачи или изменив существующие задачи. Дополнительные сведения о задачах сборки см. в разделе "Сборка кода".После завершения редактирования
azure-pipelines.yml
нажмите кнопку "Сохранить и запустить".Чтобы зафиксировать файл в репозитории
azure-pipelines.yml
, нажмите кнопку "Сохранить и снова запустить ".
Вы можете выбрать задачу для просмотра конвейера в процессе выполнения.
Теперь у вас есть рабочий конвейер YAML (azure-pipelines.yml
) в репозитории, который готов к настройке! Чтобы внести изменения в конвейер, выберите его на странице конвейеров и изменитеazure-pipelines.yml
файл.
Среда сборки
Используйте Azure Pipelines для создания приложений Java без настройки инфраструктуры. Используйте образы Windows, Linux или macOS для разработки. Агенты, размещенные компанией Microsoft в Azure Pipelines, имеют современные версии JDK и другие инструменты для Java, установленные заранее. Сведения о том, какие версии Java установлены, см. в разделе агентов, размещенных корпорацией Майкрософт.
Выберите соответствующее изображение, обновив следующий фрагмент кода в azure-pipelines.yml
файле.
pool:
vmImage: 'ubuntu-latest' # other options: 'macOS-latest', 'windows-latest'
Полный список образов см. в агентах, размещенных Майкрософт.
В качестве альтернативы агентам, размещаемым на платформе Майкрософт, настройте самостоятельно размещенные агенты с установленной средой Java. Используйте локальные агенты для экономии времени, если у вас есть большой репозиторий или выполнение добавочных сборок.
Сборки выполняются на самостоятельно размещённом агенте. Убедитесь, что Java и средства, необходимые для выбранного метода сборки, устанавливаются на узле агента.
Пул агентов и возможности агента можно выбрать в разделах "Пул агентов" и "Спецификация агента" на вкладке "Параметры" в редакторе конвейера.
Например, укажите пул агентов и агент с возможностью Maven, добавив следующий фрагмент кода в azure-pipelines.yml
файл.
pool:
name: MyPool
demands: maven
Соберите ваш код
Вы можете создать приложение Java с помощью Maven, Gradle, Ant или скрипта. В следующих разделах показано, как добавить шаг сборки в конвейер для каждого метода.
Мейвен
Для сборки Maven добавьте в файл следующие задачи azure-pipelines.yml
. Замените значения, соответствующие проекту. Дополнительные сведения о параметрах задачи см. в задаче Maven.
steps:
- task: Maven@4
inputs:
mavenPomFile: 'pom.xml'
mavenOptions: '-Xmx3072m'
javaHomeOption: 'JDKVersion'
jdkVersionOption: 'default'
jdkArchitectureOption: 'x64'
publishJUnitResults: true
testResultsFiles: '**/TEST-*.xml'
goals: 'package'
Для Spring Boot также можно использовать задачу Maven . Убедитесь, что значение mavenPomFile
отражает путь к файлу pom.xml
. Например, если вы используете образец репозитория Spring Boot, ваш путь: complete/pom.xml
.
Настройка пути сборки
Установите значение mavenPomFile
, если файл pom.xml
не находится в корне репозитория. Значение пути к файлу должно быть относительно корневого каталога репозитория, например IdentityService/pom.xml
или $(system.defaultWorkingDirectory)/IdentityService/pom.xml
.
Настройка целей Maven
Задайте значение целей в разделенном пробелом списке целей для выполнения Maven, напримерclean package
. Дополнительные сведения об основных этапах и целях Java см. в документации Apache Maven.
Gradle (Грэйдл)
Для сборки проекта Gradle добавьте следующую задачу в файл azure-pipelines.yml
. Дополнительные сведения об этих параметрах см. в задаче Gradle .
steps:
- task: Gradle@3
inputs:
workingDirectory: ''
gradleWrapperFile: 'gradlew'
gradleOptions: '-Xmx3072m'
javaHomeOption: 'JDKVersion'
jdkVersionOption: 'default'
jdkArchitectureOption: 'x64'
publishJUnitResults: true
testResultsFiles: '**/TEST-*.xml'
tasks: 'build'
Обёртка Gradle
Убедитесь, что gradlew
файл находится в репозитории. Если его нет, создайте, выполнив команду gradle wrapper
в корневом каталоге проекта. Сведения о создании оболочки Gradle см. в разделе Gradle.
Выберите версию Gradle
Версия Gradle, установленная на компьютере агента, используется, если файл репозитория gradle/wrapper/gradle-wrapper.properties
не имеет свойства, указывающее другую distributionUrl
версию Gradle для скачивания и использования во время сборки.
Настройка пути сборки
Установите значение workingDirectory
, если файл gradlew
не находится в корне репозитория.
Значение каталога должно быть относительно корневого каталога репозитория, например IdentityService
или $(system.defaultWorkingDirectory)/IdentityService
.
Измените значение gradleWrapperFile
, если ваш gradlew
файл не находится в корневом каталоге репозитория. Значение пути к файлу должно быть относительно корневого каталога репозитория, например IdentityService/gradlew
или $(system.defaultWorkingDirectory)/IdentityService/gradlew
.
Настройка задач Gradle
Настройте значение задач для задач, которые должны выполняться Gradle, например build
или check
. Дополнительные сведения о распространенных задачах подключаемого модуля Java для Gradle: см. в документации по Gradle.
Муравей
В сборке Ant добавьте следующую задачу в файл azure-pipelines.yml
. Измените значения, например путь к build.xml
файлу, чтобы соответствовать конфигурации проекта. Дополнительные сведения об этих параметрах см. в задаче "Ant ". При использовании примера репозитория необходимо указать build.xml
файл в репозитории.
steps:
- task: Ant@1
inputs:
workingDirectory: ''
buildFile: 'build.xml'
javaHomeOption: 'JDKVersion'
jdkVersionOption: 'default'
jdkArchitectureOption: 'x64'
publishJUnitResults: false
testResultsFiles: '**/TEST-*.xml'
Скрипт
Чтобы создать командную строку или скрипт, добавьте один из этих фрагментов в azure-pipelines.yml
файл.
Встроенный скрипт
На script:
шаге выполняется встроенный скрипт с помощью Bash в Linux и macOS, а также командной строки в Windows. Дополнительные сведения см. в задаче "Bash " или "Командная строка ".
steps:
- script: |
echo Starting the build
mvn package
displayName: 'Build with Maven'
Файл скрипта
Эта задача запускает файл скрипта, который находится в репозитории. Для получения подробной информации, см. задачу Shell Script, Batch script или PowerShell.
steps:
- task: ShellScript@2
inputs:
scriptPath: 'build.sh'
Следующие шаги
Опубликуйте выходные данные сборки в конвейере. Упаковайте и опубликуйте приложение в пакете Maven или JAR-файле , чтобы развернуть его в веб-приложении.
Дополнительные сведения о создании конвейера CI/CD для целевого объекта развертывания: