Vytvoření funkce služby Azure Functions pomocí archetypu Maven
Archetypy Maven poskytují vývojářům základní stavební bloky pro vytváření projektů. K dispozici jsou různé archetypy a každý jiný archetyp poskytuje specifické funkce, které můžou vývojáři používat při vývoji aplikací. S ohledem na to Společnost Microsoft vydala azure-functions-archetype
archetyp, aby podporovala práci se službou Azure Functions.
V této lekci se dozvíte, co potřebujete, abyste mohli začít s archetypy Maven. Zjistíte, jak používat azure-functions-archetype
Maven a prozkoumáte vytvoření ukázkové funkce.
Začínáme s archetypy Maven a Azure Functions
Automatizace sestavování webových aplikací Java pomocí Mavenu
Maven je nejčastěji používaný nástroj pro sestavování a správu libovolného projektu založeného na Javě. Pomáhá zjednodušit procesy vytváření projektů v Javě tím, že poskytuje standardní způsob vytváření projektů. Součástí tohoto standardu je jasná definice toho, čeho se projekt skládá, snadný způsob publikování informací o projektu a způsob sdílení žádostí o přijetí změn napříč několika projekty. Cílem Mavenu je:
- Zjednodušit proces sestavení
- Transparentně migrovat na nové funkce
- Poskytnout jednotný systém sestavení
- Implementovat pokyny týkající se osvědčených postupů při vývoji
Jako vývojář v jazyce Java už jste obeznámeni s používáním Mavenu k vytváření a kompilování aplikací. Vývojové prostředí máte s největší pravděpodobností nastavené tak, abyste měli vždy nejnovější verzi Mavenu. V tomto modulu dokončíte cvičení pomocí Azure Cloud Shellu v sandboxu Learn. Cloud Shell v sandboxu Learn obsahuje všechny potřebné součásti pro vytváření aplikací v Javě pomocí Mavenu, které jsou připravené k nasazení do Azure.
Poznámka:
Pokud byste v sandboxu Learn místo Cloud Shellu používali svůj osobní účet Azure, museli byste mít nainstalované následující položky:
Položka | Verze |
---|---|
Java JDK | 1.8 |
Maven | 3.0 nebo vyšší |
Azure Functions Core Tools | 2,7 nebo vyšší |
Co je architektura modulů plug-in Maven
Maven je architektura pro provádění řady modulů plug-in. Každý modul plug-in Maven má specifické chování řízené parametry, které poskytují vývojáři. Moduly plug-in například určují, jestli se má vytvořit soubor WAR (Web Application Archive) nebo JAR (Java Archive) a jak se bude váš kód kompilovat a řídí také spouštění testů jednotek. Prostřednictvím modulu plug-in Maven je možné implementovat prakticky jakoukoli akci.
Moduly plug-in definují úkoly jako cíle a modul plug-in může mít několik cílů. Například modul plug-in Maven Clean Plugin má jeden cíl, a tím je odebrání cílového adresáře pro váš projekt.
Soubor Maven Project Object Model (POM) je konfigurační soubor XML, který je součástí souborů projektu vaší aplikace. Soubory POM mají název pom.xml a obsahují definice pro každý z modulů plug-in, které vaše aplikace potřebuje, včetně požadovaných parametrů pro každý modul plug-in.
Při sestavování nebo nasazování funkce Azure pomocí Mavenu musíte do souboru pom.xml zahrnout azure-functions-maven-plugin
. Podrobnosti o přidání plug-inu do souboru pom.xml najdete v této lekci v oddílu Interaktivní použití archetypů.
Co jsou archetypy Maven?
V mnoha ohledech jsou archetypy Maven podobné šablonám. Archetyp je model (vzor), který můžete použít k urychlení procesu vývoje. Archetypy je možné přizpůsobit pomocí parametrů specifických pro projekt, které zadáte během procesu generování. Jednotlivé archetypy jsou založené na osvědčených postupech, které je možné nakonfigurovat tak, aby splňovaly požadavky vaší organizace.
Interaktivní použití archetypů
Pokud byste k vygenerování projektu chtěli použít archetyp společnosti Microsoft pro Azure Functions, mohli byste použít příkaz mvn archetype:generate
, který přepne do interaktivního režimu, ve kterém budete vyzváni k zadání hodnot. Příklad:
mvn archetype:generate \
-DarchetypeGroupId="com.microsoft.azure" \
-DarchetypeArtifactId="azure-functions-archetype"
Kde:
Parametr | Popis |
---|---|
archetype:generate |
Instruuje Maven, aby vygeneroval projekt z archetypu. |
-DarchetypeGroupId |
Určuje ID skupiny archetypu, což je obvykle autor archetypu. |
-DarchetypeArtifactId |
Určuje ID archetypu, což je archetyp Azure Functions v tomto příkladu. |
-DjavaVersion=8 |
Pokud chcete funkce spouštět ve verzi Java 11, použijte -DjavaVersion=11 . |
Když vytvoříte projekt pomocí mvn archetype:generate
příkazu, Maven vytvoří pro projekt složku a kořenová složka obsahuje soubor pom.xml projektu.
Pokud zadáte azure-functions-archetype
při spuštění mvn archetype:generate
příkazu, soubor pom.xml projektu obsahuje oddíl, který obsahuje potřebné informace pro modul plug-in Azure Functions. Příklad:
<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>
Vytvoření základní funkce pomocí Azure Cloud Shellu
Základní funkci Azure můžete vytvořit přímo v rámci Azure Cloud Shellu. Azure zajišťuje, aby byly k dispozici všechny požadované knihovny pro vytvoření a sestavení projektu, včetně modulu plug-in Azure Functions a Maven.
Následující kroky ilustrují základní proces pro vytvoření funkce služby Azure Function pomocí Cloud Shellu:
V Cloud Shellu spusťte
mvn archetype:generate
příkaz a zadejteazure-functions-archetype
.Maven vás vyzve k zadání
groupId
aplikace, kterou zadáte v obráceném formátu názvu domény, například:com.microsoft.example
.Maven vás vyzve k zadání názvu identifikátoru
artifactId
pro vaši aplikaci, který by měl jedinečně odkazovat na váš projekt, například:myapp
.Maven vás může vyzvat k zadání dalších parametrů. Můžete přijmout výchozí hodnoty, a to stisknutím klávesy Enter na počítači. Pro tuto chvíli je potřeba jenom
groupId
aartifactId
.Maven vytvoří místní projekt funkce Azure Functions.
mvn archetype:generate
Po dokončení příkazu máte jednoduchý projekt Java, který je připravený k přizpůsobení a sestavení.
V následujícím cvičení použijete tyto znalosti k vytvoření funkce Azure Functions pomocí Mavenu.