Создание функции 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:

  1. В Cloud Shell выполните mvn archetype:generate команду и укажите azure-functions-archetype.

  2. Maven предложит ввести groupId приложение, которое вводится в формате обратного доменного имени, например: com.microsoft.example

  3. Maven предложит ввести имя artifactId для приложения, которое должно представлять собой уникальную ссылку на ваш проект. Например: myapp.

  4. Maven может предложить ввести значения других параметров. Вы можете принять значения по умолчанию, нажав кнопку ВВОД на клавиатуре компьютера. Сейчас необходимо указать только значения параметров groupId и artifactId.

  5. Maven создает локальный проект функции Azure. mvn archetype:generate После завершения команды у вас будет простой проект Java, готовый к настройке и сборке.

В следующем упражнении вы используете эти знания для создания функции Azure с помощью Maven.