Bien démarrer avec le Kit de développement logiciel (SDK) Azure et Gradle
Cet article explique comment utiliser Gradle pour générer des applications avec le Kit de développement logiciel (SDK) Azure pour Java. Dans cet article, vous allez configurer un nouveau projet avec Gradle, générer des projets avec Gradle et utiliser les outils d’images natives GraalVM pour créer des fichiers binaires natifs spécifiques à la plateforme.
Prérequis
- Kit de développement Java, version 8 ou ultérieure. Nous vous recommandons la version 17 pour une expérience optimale.
- Gradle
Créer un projet Gradle
Contrairement à Maven, Gradle ne dispose pas d’un système archétype pour les projets de démarrage d’une manière modèle. Le démarrage d’un projet Gradle est possible, mais il ne configure pas le Kit de développement logiciel (SDK) Azure pour des spécificités Java comme l’équivalent Maven. Pour parcourir les étapes, utilisez d’abord la commande suivante pour créer un répertoire vide à partir de la ligne de commande :
gradle init --type java-application
Vous êtes invité à répondre à une courte série de questions, après quoi vous avez un répertoire contenant une collection de fichiers et de sous-répertoires. Pour vous assurer que les fichiers générés sont compilés, exécutez les commandes suivantes requises pour vérifier la build :
gradle clean assemble test
Vous pouvez maintenant passer à la modification du fichier build.gradle situé dans le répertoire de l’application. Pour commencer, pour simplifier la gestion des versions des dépendances, l’équipe du Kit de développement logiciel (SDK) Azure pour Java publie le Kit de développement logiciel (SDK) Azure pour le bom client Java chaque mois. Ce fichier BOM inclut tous les packages client Azure (GA) disponibles en disponibilité générale pour les packages clients Java avec leur version de dépendance compatible.
Pour utiliser des versions de dépendance pour une bibliothèque cliente Azure SDK pour Java qui se trouve dans le boM, incluez l’extrait de code suivant dans le fichier build.gradle du projet. Remplacez l’espace {bom_version_to_target}
réservé par la dernière version du Kit de développement logiciel (SDK) Azure pour Java BOM.
dependencies {
implementation platform('com.azure:azure-sdk-bom:{bom_version_to_target}')
}
Vous trouverez toutes les versions du Kit de développement logiciel (SDK) Azure pour Java client BOM sur azure-sdk-bom. Nous vous recommandons d’utiliser la dernière version pour tirer parti des fonctionnalités les plus récentes du Kit de développement logiciel (SDK) Azure pour les bibliothèques clientes Java.
Une fois que vous avez démarré en fonction du KIT de développement logiciel (SDK) Azure pour Java BOM, vous pouvez inclure des dépendances sur les bibliothèques sans spécifier leur version. Ces valeurs de version sont automatiquement recherchées dans le Kit de développement logiciel (SDK) Azure pour BoM Java. Par exemple, pour inclure une azure-storage-blob
dépendance, ajoutez les lignes suivantes à votre fichier build.gradle :
dependencies {
implementation 'com.azure:azure-storage-blob'
}
L’utilisation de Gradle pour définir des dépendances de projet peut simplifier la gestion de vos projets. Avec le boM du Kit de développement logiciel (SDK) Azure, vous pouvez accélérer votre projet tout en étant plus confiant sur votre contrôle de version des dépendances à long terme. Nous vous recommandons d’utiliser le boM pour maintenir l’alignement et la mise à jour des dépendances.
Inclure un package non dans le boM
Le Kit de développement logiciel (SDK) Azure pour les boM client Java inclut uniquement les bibliothèques en disponibilité générale (GA). Si vous souhaitez dépendre d’un package toujours en version bêta ou d’une version de bibliothèque différente de celle incluse dans le boM, vous pouvez spécifier la version de dépendance Maven avec la groupId
section de dépendance et artifactId
dans la section dépendance. Vous pouvez choisir d’avoir des dépendances qui utilisent des versions boM et des dépendances avec des versions substituées dans le même fichier POM de projet, comme illustré dans l’exemple suivant :
dependencies {
// Use the dependency version that is in the BOM
implementation 'com.azure:azure-messaging-eventhubs'
// Override the Service Bus dependency version specified in the BOM
implementation 'com.azure:azure-messaging-servicebus:7.4.0'
}
Si vous utilisez cette approche et spécifiez des versions directement dans votre projet, vous pouvez obtenir des conflits de version de dépendance. Ces conflits se produisent, car différents packages peuvent dépendre de différentes versions des dépendances courantes, et ces versions peuvent ne pas être compatibles entre elles. Lorsque des conflits se produisent, vous pouvez rencontrer un comportement indésirable au moment de la compilation ou au moment de l’exécution. Nous vous recommandons de vous appuyer sur les versions qui se trouvent dans le BOM du Kit de développement logiciel (SDK) Azure, sauf si nécessaire. Pour plus d’informations sur la gestion des dépendances lors de l’utilisation du Kit de développement logiciel (SDK) Azure pour Java, consultez Résoudre les conflits de version des dépendances.
Créer une image native avec GraalVM
Vous pouvez utiliser GraalVM pour créer une image native d’une application Java. GraalVM compile le code Java à l’avance dans du code machine natif, ce qui peut générer des gains de performances spectaculaires dans certaines situations. Le Kit de développement logiciel (SDK) Azure pour Java fournit les métadonnées nécessaires dans chacune de ses bibliothèques clientes pour prendre en charge la compilation d’images natives GraalVM.
Pour commencer, vous devez installer GraalVM et préparer votre système de développement pour la compilation d’images natives. Le processus d’installation de GraalVM est simple et la documentation GraalVM fournit des instructions pas à pas pour installer GraalVM et l’utilisation de GraalVM pour installer l’image native. Suivez attentivement la section des prérequis pour installer les compilateurs natifs nécessaires pour votre système d’exploitation.
Avec votre projet Gradle existant, vous pouvez suivre les instructions de GraalVM pour Gradle sur l’ajout de la prise en charge de GraalVM à votre projet. Dans ce cas, vous disposez ensuite d’options de génération supplémentaires, ce qui vous permet de compiler votre application dans le bytecode Java standard ou dans une image native compilée par GraalVM.
Ensuite, vous êtes prêt à exécuter une build d’image native. Vous pouvez utiliser des outils Gradle standard pour utiliser l’image native GraalVM. Pour Gradle, utilisez la commande suivante :
gradle nativeCompile
Après avoir exécuté cette commande, GraalVM génère un exécutable natif pour la plateforme sur laquelle il s’exécute. L’exécutable apparaît dans le répertoire Gradle /app/build/native/nativeCompile de votre projet. Vous pouvez maintenant exécuter votre application avec ce fichier exécutable, et elle doit s’effectuer de la même façon qu’une application Java standard.