Déboguer Sponge dans l’IDE

Note

Voir Mise en Place de votre Espace de Travail et Configurer Votre Projet pour plus d’informations sur comment préparer votre IDE et les dépendances.

Voir la section Démarrer la Configuration et la section Utiliser le Debugger de la page Debugging d’un plugin pour plus de détails sur le debugging dans un IDE.

Cet article sera centré sur IntelliJ. Si vous utilisez Eclipse et pensez pouvoir inclure Eclipse à cet article, vous pouvez le faire sur notre dépôt GitHub.

Utiliser votre IDE pour débugger Sponge est relativement simple. Le plus gros est d’importer le fichier build.gradle après avoir Mettre en place l’espace de travail. Assurez-vous d’avoir le JDK 8 d’installé et de renseigné dans votre IDE, puis importez le projet en tant que projet Gradle. Après ça vous pouvez lancer Sponge et tester autant que vous souhaitez.

Paramètres importants

Voici une liste des paramètres principaux à vérifier pour éviter d’avoir le moindre problème.

Plugin Gradle

Le plugin Gradle doit être activé. Pour le vérifier allez dans File -> Settings -> Plugins et trouvez le plugin Gradle dans l’onglet Installed, il devrait y avoir une coche à côté du nom du plugin. Si vous ne trouvez pas le plugin Gradle alors cherchez-le dans l’onglet Marketplace et installez-le.

SDK du projet

Le SDK du projet devrait être au moins 1.8.0_20. Le niveau du langage doit être 8 - Lambdas, type annotations etc.

Configurations d’exécution

La tâche Gradle genIntelliJRuns créera les configurations pour vous. Exécutez la commande ./gradlew genIntelliJRuns dans le dossier racine du projet. Si possible exécutez cette tâche avant d’ouvrir le projet dans votre IDE. Vous devriez voir Minecraft Client et Minecraft Server listés en tant que configurations d’application et SpongeForge [jar] et SpongeForge [clean] listés en tant que configurations Gradle.

Coremods

Note

Les Coremods n’existent pas pour SpongeVanilla. Voir Glossaire de Sponge pour une définition de coremod.

Sauf pour le coremod de Sponge, Gradle ou d’autres outils d’automation fournis par Sponge ne configurent pas de coremods dans votre projet. Cela signifie que vous devez le faire vous-même. Pour cela vous devez indiquer avec le paramètre -Dfml.coreMods.load chaque coremod dans une liste séparée par des virgules dans les options de la VM. Cette option se situe dans les configurations d’exécution.

Astuce

La section Mixins de Meilleures Pratiques traite des mixins, des coremods et d’autres définitions de bas niveau.

Déboguer les Mixins couvre aussi d’autres options de VM dans la section Output.

Classpath

Dans la fenêtre Run/Debug Configurations, vérifiez que Use classpath of module: a une valeur. Si ce n’est pas le cas (que la valeur est <no module>), cliquez sur le menu déroulant et sélectionnez le module dont le nom se termine avec _main.

Astuce

En cas de doute, sélectionnez le projet sur lequel vous travailler. Par exemple si vous travaillez sur SpongeForge vous devrez sélectionner SpongeForge_main, avec SpongeVanilla ce sera SpongeVanilla_main.

Utiliser votre IDE

Maintenant que tout est configuré vous pouvez exploiter toutes fonctionnalités que propose votre IDE: les breakpoints, examiner des variables, évaluer des expression, etc… Vous pouvez aussi utiliser des fonctionnalités du jeu comme les commandes ou accéder aux logs.

Débugger avec des mods et des plugins

Pour débugger avec un mod ou un plugin, placez leur jar dans le dossier run/mods. L’IDE vous permettra d’examiner le code et d’y placer des breakpoints. Cependant vous devez marquer ce dossier comme library.

Pour le faire, ouvrez Project Settings et sélectionnez le composant Libraries. Cliquez sur le + qui se trouve en haut de la colonne du milieu. Cliquez sur Java puis trouvez et sélectionnez les dossier mods. Cliquez sur OK. Vous pouvez maintenant voir le code décompilé du mod ou du plugin et y placer des breakpoints.

Avertissement

Assurez-vous de respecter le copyright et la licence des mods ou plugins avec lesquels vous utilisez cette fonctionnalité.