Создание функции Azure с помощью архетипа Maven
Архетипы Maven предоставляют разработчикам базовые стандартные блоки для создания проектов. Существуют различные архетипы, и каждый из различных архетипов предоставляет определенные функциональные возможности, которые разработчики могут использовать в разработке приложений. С учетом azure-functions-archetype
этого корпорация Майкрософт выпустила архетип для поддержки работы с Функции Azure.
В этом уроке вы узнаете, что нужно приступить к работе с архетипами Maven. Вы увидите, как использовать azure-functions-archetype
приложение Maven, и вы узнаете, как создать пример функции.
Приступая к работе с архетипами Maven и Функциями Azure
Использование Maven для автоматизации создания веб-приложений Java
Maven — это наиболее используемое средство сборки Java для создания и управления любым проектом на основе Java. Это помогает упростить процессы создания проектов Java разработчиками, предоставляя стандартный способ создания проектов. Этот стандарт включает в себя четкое определение того, что состоит проект, простой способ публикации сведений о проекте и способ совместного использования JAR в нескольких проектах. Цели Maven
- Упрощение процесса сборки
- Прозрачный переход на новые функции
- Формирование унифицированной системы сборки
- Реализация рекомендаций по разработке
Как разработчик Java вы уже знакомы с использованием Maven для создания и компиляции приложений. При настройке среды разработки вы, скорее всего, используете последнюю версию Maven. В этом модуле вы выполните упражнения с помощью Azure Cloud Shell в песочнице Learn. Cloud Shell в песочнице Learn имеет все необходимые компоненты для создания приложений Java с помощью Maven, готовых к развертыванию в Azure.
Примечание.
Если вместо Cloud Shell в песочнице "Обучение" использовалась личная учетная запись Azure, необходимо убедиться, что установлены следующие компоненты:
Товар | Версия |
---|---|
Java JDK | 1.8 |
Maven | 3.0 или более поздней версии |
Azure Functions Core Tools | 2.7 или более поздней версии |
Какова архитектура подключаемого модуля Maven?
Maven — это платформа для выполнения ряда подключаемых модулей. Каждый подключаемый модуль Maven имеет определенное поведение, зависящее от параметров, предоставляемых разработчиками. Например, подключаемые модули управляют тем, будет ли создан файла архива веб-приложения (WAR) или файл архива Java (JAR), а также управляют способом компиляции кода и выполнением модульных тестов. С помощью подключаемого модуля Maven можно реализовать практически любое действие.
Подключаемые модули определяют задачи в качестве целей, а подключаемый модуль может иметь несколько целей. Например, у подключаемого модуля Maven Clean есть одна цель, которая заключается в удалении целевого каталога проекта.
Файл модели проекта Maven (POM) — это файл конфигурации на основе XML, который является частью файлов проекта приложения. Файлы POM имеют название pom.xml и содержат определения для каждого из подключаемых модулей, которые требуются приложению, включая обязательные параметры для каждого подключаемого модуля.
При создании или развертывании функции Azure с помощью Maven необходимо обязательно включить его azure-functions-maven-plugin
в файл pom.xml . Сведения о добавлении этого подключаемого модуля в файл pom.xml приведены в разделе Интерактивное использование архетипов этого урока.
Что такое архетипы Maven?
Архетипы Maven во многом аналогичны шаблонам. Архетип — это модель или шаблон, которые можно использовать для ускорения процесса разработки. Архетипы можно настроить с помощью параметров для конкретного проекта, которые предоставляются во время процесса создания. Каждый архетип создается на основе рекомендаций, которые можно настроить в соответствии с требованиями организации.
Использование архетипов в интерактивном режиме
Чтобы использовать архетип Microsoft для Функций Azure при создании проекта, выполните команду mvn archetype:generate
, которая перейдет в интерактивный режим и предложит ввести значения параметров. Например:
mvn archetype:generate \
-DarchetypeGroupId="com.microsoft.azure" \
-DarchetypeArtifactId="azure-functions-archetype"
Где:
Параметр | Описание |
---|---|
archetype:generate |
Указывает Maven создать проект из архетипа. |
-DarchetypeGroupId |
Задает идентификатор группы архетипа, который обычно представляет создателя архетипа. |
-DarchetypeArtifactId |
Задает идентификатор архетипа, который в данном примере представляет собой архетип Функций Azure. |
-DjavaVersion=8 |
Используйте -DjavaVersion=11 , чтобы функции выполнялись на Java 11. |
При создании проекта с помощью mvn archetype:generate
команды Maven создает папку для проекта, а корневая папка содержит файл pom.xml проекта.
Если вы укажете azure-functions-archetype
команду при выполнении mvn archetype:generate
команды, файл pom.xml проекта содержит раздел, содержащий необходимые сведения для подключаемого модуля Функции Azure. Например:
<project>
. . .
<build>
. . .
<plugins>
. . .
<plugin>
<groupId>com.microsoft.azure</groupId>
<artifactId>azure-functions-maven-plugin</artifactId>
<version>${azure.functions.maven.plugin.version}</version>
<configuration>
<!-- function app name -->
<appName>${functionAppName}</appName>
<!-- function app resource group -->
<resourceGroup>java-functions-group</resourceGroup>
<!-- function app service plan name -->
<appServicePlanName>java-functions-app-service-plan</appServicePlanName>
. . .
</configuration>
</plugin>
</plugins>
</build>
</project>
Создание базовой функции с помощью Azure Cloud Shell
Вы можете создать базовую функцию Azure прямо в Azure Cloud Shell. Azure гарантирует, что все необходимые библиотеки для создания и сборки проекта будут доступны, включая Maven и подключаемый модуль Функций Azure.
Следующие шаги иллюстрируют базовый процесс создания Функции Azure с помощью Cloud Shell:
В Cloud Shell выполните
mvn archetype:generate
команду и укажитеazure-functions-archetype
.Maven предложит ввести
groupId
приложение, которое вводится в формате обратного доменного имени, например:com.microsoft.example
Maven предложит ввести имя
artifactId
для приложения, которое должно представлять собой уникальную ссылку на ваш проект. Например:myapp
.Maven может предложить ввести значения других параметров. Вы можете принять значения по умолчанию, нажав кнопку ВВОД на клавиатуре компьютера. Сейчас необходимо указать только значения параметров
groupId
иartifactId
.Maven создает локальный проект функции Azure.
mvn archetype:generate
После завершения команды у вас будет простой проект Java, готовый к настройке и сборке.
В следующем упражнении вы используете эти знания для создания функции Azure с помощью Maven.