Créer des applications Java

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019 | TFS 2018

Notes

Les conseils suivants utilisent des pipelines BASÉS sur YAML disponibles dans Azure Pipelines. Utilisez des tâches qui correspondent à celles utilisées dans le YAML suivant.

Vous pouvez utiliser un pipeline pour générer et tester automatiquement vos projets Java. Après avoir généré et testé votre application, vous pouvez déployer votre application sur Azure App Service, Azure Functions ou Azure Kubernetes Service. Si vous travaillez sur un projet Android, consultez Générer, tester et déployer des applications Android.

Prérequis

Vous devez disposer des éléments suivants dans Azure DevOps :

Créer un pipeline

  1. Dupliquer le dépôt suivant sur GitHub :

    https://github.com/MicrosoftDocs/pipelines-java
    
  2. Connectez-vous à votre organisation Azure DevOps et accédez à votre projet.

  3. Accédez à Pipelines, puis sélectionnez Nouveau pipeline.

  4. Effectuez les étapes de l’Assistant en sélectionnant d’abord GitHub comme emplacement de votre code source. Vous serez peut-être redirigé vers GitHub pour vous connecter. Si c’est le cas, entrez vos informations d’identification GitHub.

  5. Sélectionnez votre dépôt. Vous serez peut-être redirigé vers GitHub pour pouvoir installer l’application Azure Pipelines. Si c’est le cas, sélectionnez Approuver et installer.

  6. Lorsque vous voyez l’onglet Configurer , sélectionnez Maven ou Gradle ou Ant en fonction de la façon dont vous souhaitez générer votre code.

  7. Lorsque vous êtes prêt, sélectionnez Enregistrer et exécuter.

  8. Validez un nouveau fichier azure-pipelines.yml dans votre dépôt. Sélectionnez de nouveau Save and run (Enregistrer et exécuter).

    Si vous souhaitez surveiller votre pipeline en action, sélectionnez le travail de génération.

    Vous venez de créer et d’exécuter un pipeline, car votre code semblait être une bonne correspondance pour le modèle Maven que nous avons créé automatiquement pour vous.

    Vous disposez maintenant d’un pipeline YAML (azure-pipelines.yml) opérationnel dans votre dépôt prêt à être personnalisé !

  9. Lorsque vous êtes prêt à apporter des modifications à votre pipeline, sélectionnez-le dans la page Pipelines , puis modifiez le azure-pipelines.yml fichier.

  1. Importez le dépôt suivant dans votre dépôt Git dans Azure DevOps Server 2019 :

    https://github.com/MicrosoftDocs/pipelines-java
    
  2. Enregistrez le pipeline et la file d’attente d’une build. Lorsque le Build #nnnnnnnn.n has been queued message s’affiche, sélectionnez le lien numéro pour afficher votre pipeline en action. Vous disposez maintenant d’un pipeline de travail qui est prêt à vous permettre de personnaliser à tout moment !

  1. Importez le dépôt suivant dans votre dépôt Git dans TFS :

    https://github.com/MicrosoftDocs/pipelines-java
    

    Ce modèle ajoute automatiquement les tâches dont vous avez besoin pour générer le code dans l’exemple de référentiel.

  2. Enregistrez le pipeline et la file d’attente d’une build. Lorsque le Build #nnnnnnnn.n has been queued message s’affiche, sélectionnez le lien numéro pour afficher votre pipeline en action. Vous disposez maintenant d’un pipeline de travail qui est prêt à vous permettre de personnaliser à tout moment !

Pour en savoir plus, découvrez quelques-unes des méthodes les plus courantes pour personnaliser votre pipeline.

Environnement de génération

Vous pouvez utiliser Azure Pipelines pour créer des applications Java sans avoir besoin de configurer une infrastructure de votre choix. Vous pouvez créer des images Windows, Linux ou macOS. Les agents hébergés par Microsoft dans Azure Pipelines disposent de JDK modernes et d’autres outils pour Java préinstallés. Pour savoir quelles versions de Java sont installées, consultez les agents hébergés par Microsoft.

Mettez à jour l’extrait de code suivant dans votre azure-pipelines.yml fichier pour sélectionner l’image appropriée.

pool:
  vmImage: 'ubuntu-latest' # other options: 'macOS-latest', 'windows-latest'

Consultez les agents hébergés par Microsoft pour obtenir la liste complète des images.

En guise d’alternative à l’utilisation d’agents hébergés par Microsoft, vous pouvez configurer des agents auto-hébergés avec Java installé. Vous pouvez également utiliser des agents auto-hébergés pour gagner plus de temps si vous avez un grand dépôt ou exécuter des builds incrémentielles.

Vos builds s’exécutent sur un agent auto-hébergé. Vérifiez que Java est installé sur l’agent.

Générer votre code

Maven

Avec votre build Maven, l’extrait de code suivant est ajouté à votre azure-pipelines.yml fichier. Vous pouvez modifier des valeurs, telles que le chemin d’accès à votre pom.xml fichier, pour qu’elles correspondent à la configuration de votre projet. Pour plus d’informations sur ces options, consultez la tâche Maven .

steps:
- task: Maven@4
  inputs:
    mavenPomFile: 'pom.xml'
    mavenOptions: '-Xmx3072m'
    javaHomeOption: 'JDKVersion'
    jdkVersionOption: '1.8'
    jdkArchitectureOption: 'x64'
    publishJUnitResults: true
    testResultsFiles: '**/TEST-*.xml'
    goals: 'package'

Pour Spring Boot, vous pouvez également utiliser la tâche Maven . Assurez-vous que votre mavenPomFile valeur reflète le chemin d’accès à votre pom.xml fichier. Par exemple, si vous utilisez l’exemple de dépôt Spring Boot, votre chemin sera complete/pom.xml.

Personnaliser le chemin d’accès de build

Ajustez la mavenPomFile valeur si votre pom.xml fichier n’est pas à la racine du dépôt. La valeur du chemin d’accès au fichier doit être relative à la racine du dépôt, telle que IdentityService/pom.xml ou $(system.defaultWorkingDirectory)/IdentityService/pom.xml.

Personnaliser les objectifs Maven

Définissez la valeur des objectifs sur une liste d’objectifs séparés par un espace pour que Maven s’exécute, par exemple clean package.

Pour plus d’informations sur les phases et objectifs Java courants, consultez la documentation Maven d’Apache.

Gradle

Avec la build Gradle, l’extrait de code suivant est ajouté à votre azure-pipelines.yml fichier. Pour plus d’informations sur ces options, consultez la tâche Gradle .

steps:
- task: Gradle@2
  inputs:
    workingDirectory: ''
    gradleWrapperFile: 'gradlew'
    gradleOptions: '-Xmx3072m'
    javaHomeOption: 'JDKVersion'
    jdkVersionOption: '1.8'
    jdkArchitectureOption: 'x64'
    publishJUnitResults: true
    testResultsFiles: '**/TEST-*.xml'
    tasks: 'build'

Choisir la version de Gradle

La version de Gradle installée sur l’ordinateur de l’agent sera utilisée, sauf si le fichier de gradle/wrapper/gradle-wrapper.properties votre dépôt possède une distributionUrl propriété qui spécifie une autre version gradle à télécharger et à utiliser pendant la génération.

Ajuster le chemin de génération

Ajustez la workingDirectory valeur si votre gradlew fichier n’est pas à la racine du dépôt. La valeur du répertoire doit être relative à la racine du dépôt, telle que IdentityService ou $(system.defaultWorkingDirectory)/IdentityService.

Ajustez la gradleWrapperFile valeur si votre gradlew fichier n’est pas à la racine du dépôt. La valeur du chemin d’accès au fichier doit être relative à la racine du dépôt, telle que IdentityService/gradlew ou $(system.defaultWorkingDirectory)/IdentityService/gradlew.

Ajuster les tâches Gradle

Ajustez la valeur des tâches pour les tâches que Gradle doit exécuter, telles que build ou check.

Pour plus d’informations sur les tâches courantes du plug-in Java pour Gradle, consultez la documentation de Gradle.

Fourmi

Avec la build Ant, l’extrait de code suivant est ajouté à votre azure-pipelines.yml fichier. Modifiez les valeurs, telles que le chemin d’accès à votre build.xml fichier pour qu’il corresponde à la configuration de votre projet. Pour plus d’informations sur ces options, consultez la tâche Ant .

steps:
- task: Ant@1
  inputs:
    workingDirectory: ''
    buildFile: 'build.xml'
    javaHomeOption: 'JDKVersion'
    jdkVersionOption: '1.8'
    jdkArchitectureOption: 'x64'
    publishJUnitResults: false
    testResultsFiles: '**/TEST-*.xml'

Script

Pour générer avec une ligne de commande ou un script, ajoutez l’un des extraits de code suivants à votre azure-pipelines.yml fichier.

Script en ligne

L’étape script: exécute un script inline à l’aide de Bash sur Linux et macOS et de l’invite de commandes sur Windows. Pour plus d’informations, consultez la tâche De ligne de commande ou Bash.

steps:
- script: |
    echo Starting the build
    mvn package
  displayName: 'Build with Maven'

Fichier de script

Cet extrait de code exécute un fichier de script qui se trouve dans votre dépôt. Pour plus d’informations, consultez la tâche Script Shell, Script Batch ou PowerShell .

steps:
- task: ShellScript@2
  inputs:
    scriptPath: 'build.sh'

Étapes suivantes

Une fois que vous avez créé et testé votre application, vous pouvez charger la sortie de build dans Azure Pipelines, créer et publier un package Maven, ou empaqueter la sortie de build dans un fichier .war/jar à déployer sur une application web.