Je suis un débutant en Java et j'essaie d'exécuter mon code avec IntelliJ que je viens d'installer en tant que IDE avec JDK 1.7. Le morceau de code suivant ne compile même pas et continue à me donner l'erreur:
Error: Could not find or load main class libTest
import Java.lang.Integer;
import Java.lang.String;
import Java.lang.System;
import Java.util.*;
class book {
private String name = "trial";
private int bookCode=1;
private int issued=0;
public void Issue(){
if(issued==0) {
issued=1;
System.out.println("You have succesfully issued the book");
}
else {
System.out.println("The book is already issued. Please contact the librarian for further details");
}
}
public int checkCode() {
return bookCode;
}
String readName() {
return name;
}
public void setName(String newName){
name=newName;
}
public void setBookCode(int newCode){
bookCode=newCode;
}
}
class library {
private ArrayList books=new ArrayList();
public void getList(){
for(int bk:books){
String bName=books(bk).readName();
System.out.println((bk+1)+") "+bName);
}
}
}
public class libTest{
public static void main(String[] args){
library newLib= new library();
System.out.println("code working");
}
}
Y at-il un changement que je dois faire dans les paramètres du compilateur? Ou est-ce le code.
Cela pourrait aider:
1) Menu "Construire" -> "Rebuild Project
" . Parfois, Intellij ne réécrit pas les classes car elles existent déjà, ainsi vous demandez à Intellij de tout réécrire.
2) Menu "Exécuter" -> "Edit configuration
" -> supprimer le profil -> rajouter le profil ("Application" s'il s'agit d'une application Java), choisissez votre classe principale dans le menu déroulant "Classe principale".
3) Menu "Construire" -> "Rebuild Project
".
Si aucune des réponses ci-dessus ne vous convient, fermez simplement votre fichier intelliJ IDE et supprimez le fichier et le dossier intelliJ IDE de la racine du projet:
rm -rf .idea *.iml
Ouvrez ensuite le projet avec intelliJ. Cela doit fonctionner maintenant.
Créer explicitement un dossier out
puis définir le chemin de sortie à C:\Users\USERNAME\IdeaProjects\PROJECTNAME\out
semblait fonctionner pour moi lorsque out
venait à peine et qu'IntelliJ ne créerait pas le dossier.
Essayez également d’avoir IntelliJ pour vous faire une nouvelle configuration d’exécution:
Trouvez le précédent en cliquant sur
puis l'enlever
et frapper d'accord.
Maintenant, (étape importante) ouvrez la classe contenant votre méthode principale. Ceci est probablement plus facile en cliquant sur le nom de la classe dans la partie gauche du projet. Vitre.
Donne 'un Alt + Shift + F10 et vous devriez avoir un
Maintenant frappé Enter!!
Tadah ?? (Cela a-t-il fonctionné?)
J'ai eu ce problème et j'ai tout essayé sous le soleil auquel je pouvais penser et sur ce site.
Aucune de mes classes Java n'a été reprise après avoir été extraite d'une branche distante. Toutes les classes avaient des J rouges par leurs noms dans la hiérarchie de projets, pas des C bleus.
En fin de compte, j'ai essayé de suivre ce tutoriel et quelques étapes pour essayer quelque chose de non décrit et résoudre le problème: https://www.jetbrains.com/help/idea/creating-and-managing-modules .html
Voici ce que j'ai fait:
Pour une raison quelconque, toutes mes classes avaient alors des C bleus.
Quelqu'un avec une meilleure compréhension de la façon dont IntelliJ et/ou les IDE pourraient peut-être expliquer le phénomène, mais tout ce que je sais, c'est qu'il peut maintenant voir toutes les classes et surtout la classe principale, et s'exécuter.
Je sais que cela a été demandé il y a quelque temps, mais je tombais sur une question et pensais que mes conclusions pourraient aider les autres. Comme indiqué, le message d'erreur est essentiellement le résultat du dossier de sortie. En effet, lorsque vous essayez d'exécuter le programme, il compile d'abord le code, puis place le résultat compilé à l'emplacement de sortie, puis essaie de charger le code compilé à partir de l'emplacement de sortie. Si le code compilé ne se trouve pas à l'emplacement prévu, vous obtiendrez l'erreur.
Ce que je veux surtout dire, c’est que parfois, le code n’est pas compilé (construit), même si votre configuration d’exécution spécifie "Construire" dans la section "Avant le lancement" du panneau de configuration.
Quand cela peut-il arriver? Cela peut arriver si vous utilisez des modules et que vous supprimez manuellement le répertoire de sortie des modules. Par exemple, si j'ai un module nommé "foo", il devrait y avoir un répertoire nommé foo sous out/production. Si vous le supprimez manuellement, le système de génération peut ne pas savoir qu'il doit être reconstruit.
Pire encore, si vous sélectionnez Construire | Construisez le module 'foo', il ne peut toujours pas reconstruire le module. Si tel est le cas, vous devez sélectionner un fichier dans le module, par exemple 'bar.Java', puis sélectionner Construire | Recompiler 'bar.Java'. Le répertoire out out/production/foo doit maintenant être restauré.
Étant donné qu'IntelliJ est généralement au courant des changements en cours, cela m'a surpris et pris un peu de temps à comprendre, alors j'ai pensé partager.
Vérifiez votre module de classe : J'ai rencontré le problème suivant avec intellij: corrigé en configurant le bon module ("edit configuration" -> "use class of module")
que cela vous aide
Je devais marquer le dossier "src" comme "Sources". Après avoir redémarré IntelliJ et reconstruit le projet, je pouvais exécuter le projet sans autre problème (voir capture d'écran ) . Modifier: Vous pouvez accéder à l'onglet "Structure du projet" via Fichier-> Structure du projet ou en appuyant sur Ctrl + Maj + Alt + S.
J'ai rencontré de tels problèmes lorsque la classe est dans le dossier par défaut, c'est-à-dire lorsque la classe ne déclare pas de package.
Donc, je suppose que l’utilisation d’une instruction de paquetage (par exemple, package org.me.mypackage;
) au-dessus de la classe devrait résoudre ce problème.
J'ai hérité d'un tas de fichiers .Java provenant d'ailleurs et je n'arrivais pas à comprendre comment les faire fonctionner dans n'importe quel IDE. Finalement, je devais aller à la ligne de commande où se trouvait le fichier Main.Java et lancer javac Main.Java
. Cela a créé un groupe de fichiers .CLASS. Les IDE ont ensuite été en mesure de déterminer quoi faire.
Dans mon cas, le problème semblait être lié à la mise à niveau d’IntelliJ. Lorsque j'ai fait cela, j'ai écrasé les fichiers de l'ancien IntelliJ avec ceux de la nouvelle IntelliJ (communauté 2017 à la communauté 2018). Après cela, tous mes projets ont été brisés. J'ai tout essayé dans ce fil et aucun d'entre eux n'a fonctionné. J'ai essayé de mettre à niveau gradle vers la dernière version (4 à 4.8) et cela n'a pas fonctionné. La seule chose qui a fonctionné pour moi a été de supprimer le dossier IntelliJ en entier et de le réinstaller. Tous mes projets ont fonctionné par la suite.
Pour moi, j'ai essayé quelques-unes des options ci-dessus, cela n'a pas fonctionné. Ensuite, je viens de renommer ma classe Application, ce qui a probablement forcé intelliJ à créer un nouveau pot et le message d'erreur a commencé à changer. Ensuite, je l'ai renommé et cela a fonctionné.
Dans mon cas, dans build.gradle du module, l'affectation mainClassName doit indiquer le nom de classe complet, c'est-à-dire. tel que spécifié en tant que nom de package dans le fichier de code source de la classe principale.
Pour moi, le problème était un caractère spécial dans le chemin du fichier.
IntelliJ m'a permis d'ouvrir le projet. Cependant, lorsque j'ai construit/exécuté le projet, il ne pouvait plus localiser la classe car elle transformait le chemin du fichier pour supprimer le caractère spécial et cherchait donc dans le mauvais répertoire.
Pour résoudre le problème, je viens de supprimer le caractère spécial du nom du dossier dans lequel mon projet était stocké et de le rouvrir dans IntelliJ.
J'ai essayé tous les bidouilles suggérées ici - en vain. À la fin, j'ai simplement créé une nouvelle application Maven et y ai copié manuellement - une par une - les fichiers et les ressources Java et pom.xml. Tout fonctionne maintenant. Je suis nouveau chez IntelliJ et je ne suis absolument pas impressionné, mais il est facile de le faire entrer dans un état instable.
J'ai eu cette erreur en utilisant Scala/SBT. IntelliJ n'a pas pu trouver la classe principale, même si tout a été configuré correctement. Ma solution: supprimez le dossier <user>/.sbt/<version>/plugins/target
, puis redémarrez IntelliJ.
Recréez simplement le projet (CTRL + F9) et revérifiez (Modifiez les configurations) si vous avez une classe principale correctement définie et un module (le cas échéant).
Explications sur la solution de Brad Turek ... L'un des modèles de projet Java IntelliJ par défaut requiert un fichier appelé Main définissant les points d'entrée de la méthode classe Main et main (). Si la méthode est contenue dans un autre fichier (et classe), modifiez la configuration Run:
Fenêtre Exécuter la configuration
Comme d'autres l'ont noté, vous devez ReBuild à l'aide de la nouvelle configuration. J'utilise un package, mais cela ne semble pas faire la différence IME. J'espère que cela t'aides.
Suivez ces étapes
Yippee .... votre code fonctionnera :)