Guide

Comment mettre à jour un plugin vers une nouvelle version de Minecraft

Mis à jour le 18 octobre 2026

Quand votre serveur passe à une nouvelle version de Minecraft, beaucoup de plugins continuent de fonctionner sans modification, car l'API Bukkit est stable. D'autres ne se chargent plus ou cassent sur des détails. Si l'auteur n'a pas mis à jour un plugin et que vous avez ses sources, vous pouvez le mettre à jour vous-même : voici ce qui change, et dans quel ordre.

Décrivez-le tel qu'il doit fonctionner sur la nouvelle version.

Générer ceci avec Codexe

Étape par étape

  1. 1.Essayez d'abord l'ancien .jar

    Placez-le sur un serveur de test de la nouvelle version et lisez la console. S'il se charge et fonctionne, vous n'aurez peut-être rien à changer.

  2. 2.Changez la dépendance de l'API

    Dans pom.xml ou build.gradle, réglez paper-api ou spigot-api sur la nouvelle version.

  3. 3.Mettez à jour api-version et Java

    Réglez api-version dans plugin.yml (par exemple '1.21') et compilez pour la version de Java requise par la nouvelle version : Java 17 avant la 1.20.5, Java 21 depuis la 1.20.5, Java 25 pour la 26.x.

  4. 4.Corrigez ce qui ne compile plus

    Compilez et passez les erreurs en revue : matériaux renommés, méthodes supprimées, classes d'événements modifiées. Le compilateur les liste avec le fichier et la ligne.

  5. 5.Mettez à jour les dépendances

    Les plugins que votre plugin utilise (Vault, PlaceholderAPI, ProtocolLib, WorldGuard) doivent eux aussi être dans des versions compatibles avec la nouvelle version de Minecraft, à la fois dans le fichier de build et sur le serveur.

  6. 6.Testez sur la nouvelle version

    Chargez-le sur un serveur de la nouvelle version avec les mêmes plugins, et essayez chaque commande et chaque fonctionnalité, pas seulement le démarrage.

Ce qui casse le plus souvent

  • Noms des matériaux et des enums : la mise à jour 1.13 a renommé la plupart des objets et des blocs ; les versions suivantes en ajoutent, en renomment ou en suppriment certains. Le code qui utilise d'anciens noms ou des identifiants numériques échoue.
  • Méthodes dépréciées supprimées : les méthodes marquées comme dépréciées pendant plusieurs versions finissent par disparaître.
  • Données des objets : depuis la 1.20.5, le NBT des objets a été remplacé par les data components. Les plugins qui modifient directement le NBT des objets doivent réécrire cette partie ; l'API ItemMeta habituelle continue de fonctionner.
  • NMS et réflexion : le code qui utilise des classes internes du serveur casse à presque chaque version. Remplacez-le par l'API quand c'est possible, ou par une bibliothèque comme ProtocolLib.
  • Versions des bibliothèques : des bibliothèques intégrées compilées pour un ancien Java peuvent échouer sur le nouveau.

Mettre à jour sur de nombreuses versions

Passer de la 1.8 ou de la 1.12 à la 1.21 tient plus de la réécriture des parties qui touchent aux objets, aux blocs et aux particules que de la mise à jour. Faites-le en une seule fois avec la nouvelle API, pas version par version, et attendez-vous à devoir aussi mettre de nouveaux noms de matériaux dans les fichiers de config.

Si le plugin doit prendre en charge plusieurs versions à la fois, compilez avec la plus ancienne que vous supportez et évitez l'API ajoutée ensuite, ou utilisez des builds séparés par version.

Avec Codexe

Avec Pro et au-delà, vous pouvez importer les sources du plugin sous forme de ZIP et demander, par exemple, « Voici mon plugin Paper 1.20.4. Mets-le à jour vers Paper 1.21.4 ». Codexe lit la version de Minecraft dans le fichier de build, compile avec le Java requis par cette version, et corrige les erreurs de compilation en utilisant les vraies signatures de l'API qu'il cible. Pour un plugin que vous avez créé sur Codexe, demandez la nouvelle version dans le chat du projet.

La compilation prouve que le plugin se construit avec la nouvelle API. Essayez-le ensuite sur un serveur de test, car les changements de comportement entre versions n'apparaissent pas comme des erreurs de compilation.

Questions

Puis-je mettre à jour un plugin sans son code source ?

Pas de façon fiable. Décompiler un .jar donne un code difficile à maintenir et peut enfreindre la licence de l'auteur. Cherchez d'abord une version mise à jour ou un fork maintenu.

Un plugin 1.21.1 fonctionne-t-il en 1.21.4 ?

Souvent oui, au sein de la même version majeure, sauf s'il utilise du NMS ou une API qui a changé. Testez-le avant de compter dessus.

Pourquoi le serveur affiche-t-il « Unsupported API version » ?

C'est le cas inverse : le plugin cible une API plus récente que celle du serveur. Compilez-le pour la version de votre serveur ou mettez le serveur à jour.

Recompilez un plugin pour votre version

Ce prompt s'ouvre prêt à être envoyé :

“Une version Paper 1.21.4 de mon plugin Spigot 1.12.2 TreeFeller : casser la bûche du bas d'un arbre avec une hache casse tout l'arbre, coûte de la durabilité par bûche, fonctionne pour tous les types de bois de la 1.21, cerisier et palétuvier compris, activation avec /treefeller, paramètres dans config.yml.”

Générer ceci avec Codexe
Comment mettre à jour un plugin Minecraft vers une nouvelle version | Codexe