Ce document décrit comment gérer un processus de versionnement sémantique (SemVer) pour un projet Java utilisant Maven, de façon manuelle ou semi-automatisée.
Dans le fichier pom.xml :
<project>
...
<version>1.0.0</version>
</project>Exemples valides avec SemVer :
1.0.0-SNAPSHOT→ version de développement1.0.0-alpha,1.0.0-beta,1.0.0-rc1→ versions pré-stables1.0.0→ version stable
| Étape | Action | Commande ou modification |
|---|---|---|
| 1️⃣ | Commit du code | git commit -m "feat: ajout de la méthode getTotal()" |
| 2️⃣ | Modifier la version dans pom.xml |
<version>1.0.0-beta</version> |
| 3️⃣ | Mettre à jour le CHANGELOG.md |
Manuellement |
| 4️⃣ | Commit du bump de version | git commit -am "chore: bump version to 1.0.0-beta" |
| 5️⃣ | Ajouter un tag Git | git tag v1.0.0-beta |
| 6️⃣ | Pousser vers GitHub | git push origin main --follow-tags |
Dans le pom.xml :
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>versions-maven-plugin</artifactId>
<version>2.15.0</version>
</plugin>
</plugins>
</build>| Commande | Description |
|---|---|
mvn versions:set -DnewVersion=1.0.0-rc1 |
Modifie la version dans pom.xml |
mvn versions:commit |
Applique définitivement la nouvelle version |
mvn versions:display-dependency-updates |
Affiche les dépendances obsolètes |
mvn versions:set -DnewVersion=1.0.0-rc1
mvn versions:commit
git commit -am "chore: bump to version 1.0.0-rc1"
git tag v1.0.0-rc1
git push origin main --follow-tagsPermettre une gestion propre et traçable des versions de projet Java en utilisant les conventions SemVer et les outils natifs Git/Maven.