Introduction
Ce guide explique comment crĂ©er un workflow qui effectue une intĂ©gration continue (CI) pour votre projet Java Ă lâaide du systĂšme de gĂ©nĂ©ration Ant. Le workflow que vous crĂ©ez vous permet de voir Ă quel moment les commits de demande de tirage (pull request) entraĂźnent des Ă©checs de build ou de test dans votre branche par dĂ©faut. Cette approche peut vous aider Ă garantir lâintĂ©gritĂ© de votre code. Vous pouvez Ă©tendre votre workflow dâintĂ©gration continue pour charger des artefacts Ă partir dâune exĂ©cution de workflow.
Les exĂ©cuteurs hĂ©bergĂ©s dans GitHub ont un cache dâoutils oĂč sont prĂ©installĂ©s des logiciels, notamment les Java Development Kits (JDK) et Ant. Pour obtenir la liste des logiciels et des versions prĂ©installĂ©es de JDK et dâANT, consultez « ExĂ©cuteurs hĂ©bergĂ©s par GitHub ».
Prérequis
Vous devez ĂȘtre familiarisĂ© avec YAML et la syntaxe GitHub Actions. Pour plus dâinformations, consultez lâarticle suivant :
Il est recommandĂ© dâavoir une comprĂ©hension de base de Java et du framework Ant. Pour plus dâinformations, consultez le manuel Apache Ant.
Utilisation dâun modĂšle de workflow Ant
Pour démarrer rapidement, ajoutez un modÚle de workflow au répertoire .github/workflows
de votre référentiel.
GitHub fournit un modĂšle de workflow pour Ant qui devrait fonctionner pour la plupart des projets Java avec Ant. Les sections suivantes de ce guide donnent des exemples de la maniĂšre dont vous pouvez personnaliser ce modĂšle de workflow.
-
Sur GitHub, accédez à la page principale du référentiel.
-
Sous le nom de votre dépÎt, cliquez sur Actions.
-
Si vous disposez dĂ©jĂ dâun workflow dans votre dĂ©pĂŽt, cliquez sur Nouveau workflow.
-
La page « Choisir un workflow » présente une sélection de modÚles de workflow recommandés. Recherchez « Java avec Ant ».
-
Dans le flux de travail « Java avec Ant », cliquez sur Configurer.
-
Modifiez le workflow en fonction des besoins. Par exemple, changez la version de Java.
-
Cliquez sur Valider les changements.
Le fichier de workflow ant.yml
est ajoutĂ© Ă lâannuaire .github/workflows
de votre référentiel.
SpĂ©cification de la version et de lâarchitecture de Java
Le modĂšle de workflow configure le PATH
pour quâil contienne OpenJDK 8 pour la plateforme x64. Si vous souhaitez utiliser une autre version de Java ou cibler une architecture diffĂ©rente (x64
ou x86
), vous pouvez utiliser lâaction setup-java
pour choisir un autre environnement dâexĂ©cution Java.
Par exemple, pour utiliser la version 11 du JDK fourni par Adoptium pour la plateforme x64, vous pouvez utiliser lâaction setup-java
et configurer les paramĂštres java-version
, distribution
et architecture
sur '11'
, 'temurin'
et x64
.
steps: - uses: actions/checkout@v4 - name: Set up JDK 11 for x64 uses: actions/setup-java@v4 with: java-version: '11' distribution: 'temurin' architecture: x64
steps:
- uses: actions/checkout@v4
- name: Set up JDK 11 for x64
uses: actions/setup-java@v4
with:
java-version: '11'
distribution: 'temurin'
architecture: x64
Pour plus dâinformations, consultez lâaction setup-java
.
Génération et test de votre code
Vous pouvez utiliser les mĂȘmes commandes que celles que vous utilisez localement pour gĂ©nĂ©rer et tester votre code.
Le modÚle de flux de travail exécutera la cible par défaut spécifiée dans votre build.xml
fichier. Votre cible par défaut est généralement définie pour générer des classes, exécuter des tests et empaqueter les classes dans leur format distribuable, par exemple sous forme de fichier JAR.
Si vous utilisez différentes commandes pour générer votre projet ou si vous souhaitez exécuter une autre cible, vous pouvez les spécifier. Par exemple, vous pouvez exécuter la cible jar
qui est configurée dans un fichier build-ci.xml
.
steps: - uses: actions/checkout@v4 - uses: actions/setup-java@v4 with: java-version: '17' distribution: 'temurin' - name: Run the Ant jar target run: ant -noinput -buildfile build-ci.xml jar
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
- name: Run the Ant jar target
run: ant -noinput -buildfile build-ci.xml jar
Empaquetage des donnĂ©es de workflow en tant quâartefacts
Une fois que votre build a Ă©tĂ© gĂ©nĂ©rĂ©e et que vos tests ont rĂ©ussi, vous pouvez charger les packages Java rĂ©sultants en tant quâartefacts de build. Cela stockera les packages gĂ©nĂ©rĂ©s dans le cadre de lâexĂ©cution du workflow et vous permettra de les tĂ©lĂ©charger. Les artefacts peuvent vous aider Ă tester et Ă dĂ©boguer des demandes de tirage dans votre environnement local avant quâelles ne soient fusionnĂ©es. Pour plus dâinformations, consultez « Stocker et partager des donnĂ©es avec les artefacts de workflow ».
Ant crée généralement des fichiers de sortie comme les fichiers JAR, EAR ou WAR dans le répertoire build/jar
. Vous pouvez charger le contenu de ce rĂ©pertoire Ă lâaide de lâaction upload-artifact
.
steps: - uses: actions/checkout@v4 - uses: actions/setup-java@v4 with: java-version: '17' distribution: 'temurin' - run: ant -noinput -buildfile build.xml - uses: actions/upload-artifact@v4 with: name: Package path: build/jar
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
- run: ant -noinput -buildfile build.xml
- uses: actions/upload-artifact@v4
with:
name: Package
path: build/jar