Criar uma função do Azure com o arquétipo do Maven
Os arquétipos do Maven proporcionam aos programadores os blocos modulares básicos para criar projetos. Existem vários arquétipos disponíveis, e cada arquétipo diferente fornece funcionalidades específicas que os desenvolvedores podem usar no desenvolvimento de seus aplicativos. Com isso em mente, a Microsoft lançou o arquétipo, para dar suporte ao trabalho com o azure-functions-archetype
Azure Functions.
Nesta unidade, você aprende o que precisa para começar a usar os arquétipos do Maven. Você vê como usar o com o Maven e explora a azure-functions-archetype
criação de uma função de exemplo.
Introdução aos arquétipos do Maven e às Funções do Azure
Utilizar o Maven para automatizar a criação de aplicações Web Java
O Maven é a ferramenta de construção Java mais usada para construir e gerenciar qualquer projeto baseado em Java. Ele ajuda a simplificar os processos de como os desenvolvedores constroem projetos Java, fornecendo uma maneira padrão de construir os projetos. Esta norma inclui uma definição clara do que consiste o projeto, uma maneira fácil de publicar informações do projeto e uma maneira de compartilhar JARs em vários projetos. Os objetivos do Maven são:
- Facilitar o processo de criação
- Migrar para novas funcionalidades de forma transparente
- Fornecer um sistema de criação uniforme
- Implementar orientações sobre as melhores práticas de desenvolvimento
Como programador Java, já está familiarizado com a utilização do Maven para criar e compilar as aplicações. Quando está a configurar o ambiente de desenvolvimento, provavelmente mantem-se atualizado com as versões mais recentes do Maven. Neste módulo, você conclui os exercícios usando o Azure Cloud Shell na área restrita do Learn. O Cloud Shell na sandbox do Learn tem todas as peças necessárias para você criar aplicativos Java com o Maven que estão prontos para implantar no Azure.
Nota
Se estiver a utilizar a sua conta pessoal do Azure em vez do Cloud Shell no sandbox do Microsoft Learn, deverá confirmar que possui os seguintes itens instalados:
Item | Versão |
---|---|
Java JDK | 17 |
Maven | 3.0 ou superior |
Azure Functions Core Tools | 2.7 ou superior |
O que é a arquitetura do Maven Plugin?
Maven é uma estrutura para a execução de uma série de plugins. Cada plugin do Maven tem comportamentos específicos orientados pelos parâmetros que os desenvolvedores fornecem. Por exemplo, os plug-ins controlam se deve ser criado um ficheiro Web Application Archive (WAR) ou um Java Archive (JAR), como o código é compilado e a execução dos testes da unidade. Quase todas as ações podem ser implementadas através de um plug-in do Maven.
Os plugins definem tarefas como metas, e um plugin pode ter várias metas. Por exemplo, o Maven Clean Plugin tem um objetivo, que é o de remover o diretório de destino do projeto.
Um ficheiro POM (Project Object Model) do Maven é um ficheiro de configuração baseado em XML que faz parte dos ficheiros do projeto da aplicação. Os ficheiros POM são designados pom.xml e contêm as definições para cada um dos plug-ins necessário para a aplicação, incluindo os parâmetros necessários para cada plug-in.
Ao criar ou implantar uma função do Azure usando o Maven, você precisa incluir a azure-functions-maven-plugin
no arquivo pom.xml . Os detalhes para adicionar este plug-in ao ficheiro pom.xml estão na secção Utilizar os arquétipos de forma interativa desta unidade.
O que são os arquétipos do Maven?
Em muitos aspetos, os arquétipos do Maven são análogos aos modelos. Um arquétipo é um modelo, ou um padrão, que pode utilizar para acelerar o processo de desenvolvimento. Os arquétipos podem ser personalizados usando parâmetros específicos do projeto, que você fornece durante o processo de geração. Cada arquétipo é criado com base nas melhores práticas que podem ser configuradas para cumprir os requisitos da sua organização.
Utilizar os arquétipos de forma interativa
Para utilizar o arquétipo da Microsoft para as Funções do Azure para gerar um projeto, pode utilizar o comando mvn archetype:generate
para entrar no modo interativo e introduzir os valores. Por exemplo:
mvn archetype:generate \
-DarchetypeGroupId="com.microsoft.azure" \
-DarchetypeArtifactId="azure-functions-archetype"
Em que:
Parâmetro | Description |
---|---|
archetype:generate |
Instrui o Maven a gerar um projeto a partir de um arquétipo. |
-DarchetypeGroupId |
Especifica o ID do grupo do arquétipo, que é normalmente o criador do arquétipo. |
-DarchetypeArtifactId |
Especifica o ID do arquétipo, que é o arquétipo das Funções do Azure neste exemplo. |
-DjavaVersion=17 |
Se quiser que as suas funções sejam executadas no Java 11, utilize -DjavaVersion=11 . |
Quando você cria um projeto usando o comando, o mvn archetype:generate
Maven cria uma pasta para o projeto e a pasta raiz contém o arquivo pom.xml do projeto.
Se você especificar o quando executar o mvn archetype:generate
comando, o azure-functions-archetype
arquivo de pom.xml do seu projeto terá uma seção que contém as informações necessárias para o plug-in do Azure Functions. Por exemplo:
<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>
Criar uma função básica com o Azure Cloud Shell
Pode criar uma Função do Azure básica diretamente no Azure Cloud Shell. O Azure garante que todas as bibliotecas necessárias estão disponíveis para criar e compilar o projeto, incluindo o Maven e o plug-in das Funções do Azure.
Os passos seguintes ilustram o processo básico de criação de uma Função do Azure com o Cloud Shell:
No Cloud Shell, execute o
mvn archetype:generate
comando e especifique oazure-functions-archetype
.O Maven solicita que você insira o
groupId
para seu aplicativo, que você insere no formato de nome de domínio reverso, por exemplo:com.microsoft.example
.O Maven pede-lhe para introduzir o nome do
artifactId
para a aplicação, que deve ser uma referência exclusiva ao projeto; por exemplo:myapp
.O Maven pode pedir-lhe outros parâmetros. Pode aceitar os valores predefinidos ao premir a tecla Enter no computador. Apenas
groupId
eartifactId
são necessários, por enquanto.O Maven cria um projeto local do Azure Function. Quando o
mvn archetype:generate
comando for concluído, você terá um projeto Java simples que está pronto para personalizar e construir.
No exercício a seguir, você usa esse conhecimento para criar uma Função do Azure usando o Maven.