J'ai un projet Java dans IntelliJ IDEA qui a plusieurs packages. Mais certains fichiers de mes packages ont leur propre méthode main()
et peuvent être géré par eux-mêmes.
Cependant, si je fais un clic droit sur un fichier donné et que je choisis "Debug/Run File.main ()" IntelliJ essaiera de construire tous les fichiers dans le paquet, qu'ils soient inclus ou non.
Existe-t-il un moyen d'exécuter uniquement ce fichier?
Vous pouvez supprimer la tâche Créer dans votre configuration d'exécution. Mais vous devez compiler la classe unique manuellement avant le lancement (clic droit ou Build -> Compile votre classe).
Ou vous pouvez même essayer de compiler l'ensemble du projet si vous avez besoin de plus d'une seule classe. Cela peut fonctionner si vous n'avez aucune dépendance à une classe cassée.
Pour exécuter un seul fichier dans IntelliJ IDEA:
Méthode 1:
Cliquez avec le bouton droit quelque part dans la zone d'édition et sélectionnez Exécuter 'ClassName.main ()'. Supposons que vous souhaitiez exécuter HelloWorld, vous devez suivre les étapes ci-dessous:
Méthode 2:
Voici une solution centrée sur Maven.
Le comportement Intellij par défaut est de refaire tout le projet, et cela peut être vraiment ennuyeux. Je me retrouve à ajouter une classe de test rapide à exécuter souvent, et je dois toujours:
Cependant, cela ne construira toujours pas le module . Alors, voici ce que je fais maintenant.
Maintenant, chaque fois que je débogue, seul le module se compile et de manière incrémentielle.
Je cherchais la même chose. Google m'a d'abord laissé sur ce sujet, je vais donc publier ma solution ici.
C'est possible en remplaçant "Make" dans la configuration d'exécution par un outil personnalisé.
Retirez "Make" et cliquez sur le signe plus. Sélectionnez maintenant "Exécuter l'outil externe". Cliquez à nouveau sur le signe plus pour créer un nouvel outil personnalisé.
Spécifiez votre ligne de commande Java et définissez le répertoire de sortie sur la macro $ OutputPath $.
Maintenant, spécifiez ceci à exécuter avant le lancement:
Fonctionne parfaitement pour mon objectif.