J'ai un projet sur Eclipse sur mon ordinateur portable que j'ai poussé vers Git https://github.com/chrisbramm/LastFM-History-Graph.git
Cela fonctionne entièrement sur mon ordinateur portable et fonctionne/construit sans problème mais sur mon bureau, Eclipse ne donne pas l'erreur
Erreur: impossible de trouver ou de charger la classe principale lastfmhistoryguis.InputPanel
J'ai essayé de construire le projet à partir de:
Project>Build Project
Mais rien ne s'est passé. J'ai défini les variables PATH
sur cet ordinateur sur JRE6, JRE7 et JDK 1.7.0 même si elles ne sont pas définies sur mon ordinateur portable.
J'avais un fichier Jar (last.fm-bindings-0.1.1.jar) qui se trouvait dans mon fichier .classpath
qui se trouvait dans le dossier C:\Utilisateurs\Chris\Téléchargements de mon ordinateur portable. cela ne faisait pas partie de l'arborescence git que j'ai récemment introduite dans le dossier du projet et validée, mais je ne sais pas si je l'ai bien fait .. .. Cela poserait-il également un problème, mais il n'y a pas de lien principal argument ici.
Je ne peux pas déterminer maintenant ce que je dois vérifier/modifier.
Dans votre chemin de classe, vous utilisez un chemin absolu mais vous avez déplacé le projet sur une nouvelle machine avec probablement une structure de fichier différente.
Dans votre chemin de classe, vous devriez donc (et probablement en général si vous allez regrouper JARS avec votre projet), utiliser un chemin relatif:
Dans votre .classpath Change
<classpathentry kind="lib" path="C:/Users/Chris/Downloads/last.fm-bindings-0.1.1.jar" sourcepath=""/><classpathentry kind="lib" path="C:/Users/Chris/Downloads/last.fm-bindings-0.1.1.jar" sourcepath=""/>
à
<classpathentry kind="lib" path="last.fm-bindings-0.1.1.jar"/>
Si vous créez une classe Java avec public static void main(String[] args)
, Eclipse exécutera cette méthode principale pour vous en cliquant avec le bouton droit de la souris sur le fichier lui-même ou sur le fichier dans l'explorateur de projet, puis en choisissant:
"Exécuter en tant que" -> "Application Java."
Une fois cette opération effectuée, Eclipse stocke des informations sur votre classe. Vous pourrez ainsi la réexécuter facilement à partir du menu Exécuter en tant que (bouton de lecture vert de la barre d'outils) ou de la boîte de dialogue Exécuter les configurations.
Si par la suite vous déplacez la classe Java (manuellement ou autrement), choisissez à nouveau
"Exécuter en tant que" -> "Application Java,"
à partir du nouvel emplacement, Eclipse exécutera la configuration stockée d'origine et tentera d'invoquer cette classe à partir de son emplacement d'origine, ce qui provoquera cette erreur .
"Run As" -> "Java Application"
Eclipse écrira une nouvelle configuration pour la classe déplacée et l'erreur disparaîtra.
tl; dr : Nettoyez votre chemin de construction dans son intégralité et tout ce que vous avez déjà ajouté manuellement. Cela inclut des sources supplémentaires, des projets, des bibliothèques.
Raison derrière ceci: Le compilateur avait des problèmes pour relier les bibliothèques au projet. Cela a échoué et a généré un message d'erreur erroné.
Dans mon cas, cela aurait dû être quelque chose comme "Impossible d'ajouter AutoHotkey.dll au chemin d'accès à la construction" car c'est ce qui a fait échouer le compilateur.
Si cela ne fonctionne toujours pas, consultez le ErrorLog intégré à Eclipse :
Fenêtre -> Afficher la vue -> Général -> Journal des erreurs
J'ai fait toutes les choses mentionnées ci-dessus, mais aucune d'entre elles n'a fonctionné pour moi
Mon problème résolu avec ci-dessous.
Faites un clic droit sur votre projet >> propriétés >> JavaBuildPath >> Bibliothèques.
Retirez le pot qui porte un drapeau rouge.
Si vous avez toujours le problème essayez la solution ci-dessous, cela a fonctionné pour moi lorsque je suis confronté à ce problème une seconde fois:
cliquez avec le bouton droit de la souris sur projet >> Propriétés >> Chemin de construction Java >> Bibliothèques, Supprimer et Ajouter une bibliothèque. (Choisissez la bibliothèque système JRE)
J'ai rencontré un problème similaire dans mon projet maven webapp après avoir passé près d'une heure et j'ai trouvé une solution qui fonctionnait pour moi.
mvn clean install -U
Je ne connais pas la raison exacte derrière tout ça.
Je suppose que vous avez importé le projet dans votre installation Eclipse de bureau? Si tel est le cas, vous devez simplement sélectionner Projet> Nettoyer. Reconstruisez ensuite votre projet. A fonctionné à merveille pour moi.
J'ai eu le même problème et l'ai résolu en utilisant:
Eclipse Mars
Egit
Github
Maven Project
Le problème était que j'ai mis mon projet Maven à la disposition de github. Il déplacé mon projet dans mon dossier github.
Solution:
L'écran de démarrage sera affiché.
Après cela, mon projet a été compilé avec succès.
Vérifiez que votre projet a un constructeur en:
Il doit y avoir d'autres moyens, mais ce que j'ai fait était:
Un fichier Java ".project" minimal correct devrait ressembler à ceci:
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>myProjectName</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.Eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.Eclipse.jdt.core.javanature</nature>
</natures>
</projectDescription>
Ce qui suit a bien fonctionné pour moi ...
workspace
)bin
Une chose similaire m'est arrivée à quelques reprises, la seule façon pour moi de résoudre ce problème était de supprimer le dossier de métadonnées. Heureusement j'ai trouvé un autre moyen.
Essayez d'aller dans le projet propriétés> Chemin de construction Java> onglet Ordre et exportation> tout sélectionner (ou essayez de jouer avec les cases à cocher correspondantes).
Cela devrait entraîner une reconstruction complète du projet et Eclipse pour voir la classe principale.
Ajout: J'ai remarqué que ce bogue se produit lorsque plusieurs projets sont dans un espace de travail et que certains d'entre eux sont mal configurés (un point d'exclamation rouge apparaît). La correction du chemin de génération du projet et d'autres paramètres (même si ce projet n'est pas lié à celui avec lequel vous avez des problèmes) devrait résoudre un problème.
Si vous utilisez Eclipse, les étapes suivantes résoudront votre problème:
Allez dans Exécuter -> Exécuter les configurations -> Recherche de classe principale -> Localisez votre classe manuellement -> Appliquer -> Exécuter
Mon Main class
est introuvable ou le problème chargé est causé par une raison intéressante.
Dans notre projet, nous utilisons Maven
comme outil de génération et mon main class
extends
une classe, qui figure dans le class path
mais dont la portée était test
, alors que le main class
n'est pas sous le package de test.
Si votre classe principale extends
est une classe, essayez d’abord d’exécuter votre main class
en supprimant la partie extends
. Si cela fonctionne, vous comprendrez au moins que le problème ne vient pas de run configuration
ou Eclipse
mais de la classe, votre main class
extends
.
Si votre code est bon et que vous savez que vous rencontrez un problème Eclipse, cela va le résoudre.
Vous pouvez simplement supprimer $ yourproject/.classpath, $ yourproject/.project et $ yourworkspace/.metadata. Quelqu'un d'autre a mentionné cette option. Cela fera exploser tout votre espace de travail. Au lieu:
Ce problème est également dû au fait que vous avez des caractères spéciaux dans votre chemin d’espace de travail. J'avais mon espace de travail dans mon dossier personnel et son nom était en grec, donc cela ne fonctionnait pas. J'ai changé mon espace de travail, il ne contient maintenant que des caractères anglais et le projet est maintenant construit sans aucun problème.
J'ai eu cette erreur. C'est parce que j'avais static void main(String[] args)
au lieu de public static void main(String[] args)
J'ai passé presque une heure à essayer de comprendre cela.
Remarque: La seule différence est que je n'ai pas déclaré main
comme étant public
Consultez le journal des erreurs de l'espace de travail (Windows-> Afficher la vue -> Journal des erreurs). Si vous constatez que l'un des fichiers jar importés est corrompu, supprimez le dossier de référentiel correspondant et effectuez une nouvelle importation.
J'ai rencontré cette erreur aujourd'hui parce que j'ai mis en place un programme hello world, puis coupé et collé un nouveau programme dans le même fichier. Pour résoudre le problème de ne pas trouver hello world comme le dernier s'appelait, j'ai cliqué sur Exécuter-> Exécuter les configurations, puis sous Classe principale, j'ai cliqué sur Rechercher. Elle a trouvé mon nouveau nom de classe et l'a remplacée par le nouveau nom correct dans le texte collé . C’est un problème pour les débutants que je connais mais il est également facile à résoudre. J'espère que cela aide quelqu'un! Douglas
Je rencontre le même problème, mais dans mon cas, cela est dû à un dossier source manquant (vide) (il existe dans le projet d'origine, mais pas dans le référentiel GIT car il est vide).
Après avoir créé le dossier manquant, tout fonctionne.
Pour résoudre cette erreur, procédez comme suit:
Étape 1: Ouvrez le fichier .project .
Étape 2: Vérifiez deux balises ...
a) <buildSpec>
b) <natures>
Étape 3: Si les balises mentionnées ci-dessus n'incluent aucun contenu, l'erreur ci-dessus se produira sûrement.
Étape 4: Ajoutez le contenu suivant à chaque balise afin de résoudre l’erreur ci-dessus.
Pour <buildSpec>
:
<buildSpec>
<buildCommand>
<name>org.Eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
Pour <natures>
:
<natures>
<nature>org.Eclipse.jdt.core.javanature</nature>
</natures>
Étape 5: Enregistrez votre fichier en appuyant sur ctrl + s.
Étape 6: Pour des raisons de sécurité, fermez le projet une fois, puis rouvrez-le.
Étape 7: C'est ça. Vous êtes prêt pour le rock !!!
Veuillez mentionner dans les commentaires si la solution a été utile.
Je vous remercie.
Ce sont les étapes simples qui m'ont aidé à résoudre ce problème.
Allez simplement dans votre explorateur de paquet et appuyez sur F5, ou pour certains ordinateurs portables fn + F5. La raison en est que Eclipse pense que les fichiers sont quelque part, mais que les fichiers sont en réalité ailleurs. En l'actualisant, vous les mettez tous les deux sur la même page. Ne vous inquiétez pas, vous ne perdrez rien, mais si vous voulez être extrêmement prudent, sauvegardez simplement les fichiers de votre dossier de projets Java dans un endroit sûr.
J'ai aussi reçu cette erreur, juste après avoir déplacé des ressources. En vérifiant le journal des erreurs, j'ai constaté qu'Eclipse ne pouvait pas construire car il ne pouvait pas supprimer un fichier/dossier. Essayez de supprimer manuellement le dossier "bin" (ou ce que cela appelle pour vous).
Cela a fait le tour pour moi, au moins.
2 types de solutions existent pour la même chose.
(1) Accédez aux configurations d'exécution: - run-> run configurationsDans l'onglet Classpath:
Sélectionnez Avancé Ajoutez où Eclipse a l'habitude de placer la classe * .class pour les projets, qui se trouve dans bin. J'ai donc ajouté le répertoire bin du projet.
(2) Si la première solution ne fonctionne pas, cela signifie que le pot que vous signalez à votre projet suit le chemin de votre dépôt Maven local qui n'est pas mis à jour pour votre projet. copiez-le, collez-le dans un nouveau projet ou téléchargez-le simplement depuis n'importe quel site et configurez-le dans votre chemin de génération.
J'espère que ça aide.
J'ai eu le même problème avec le fichier .classpath correct et j'ai vite constaté que ce n'était pas le fichier .classpath qui était compté (après avoir résolu ce problème, je remplace le fichier .classpath utilisable par le fichier d'origine. classpath n’est pas le cas)
Comme c'est un projet Maven, tout ce que j'ai fait est:
j'espère que ça aide!
J'ai trouvé une autre solution dans mon cas ce problème: Eclipse->Preferences->Java->Installed JRE
puis appuyez sur le bouton Rechercher. Sélectionnez le dossier sous Linux /usr
, puis Eclipse a trouvé toutes les machines virtuelles.
Sélectionnez une autre machine virtuelle trop récente . C'est résolu pour mon cas.
Ce problème est survenu lorsque j'ai supprimé un fichier ".jar" du projet Eclipse en cliquant dessus avec le bouton droit de la souris et en sélectionnant "delete" (et non dans "Build path").
Pour résoudre, j'ai essayé les étapes suivantes:
1- Faites un clic droit sur le projet
2- Chemin de construction -> Configurer le chemin de construction
3- Bibliothèques
4- Supprimez le fichier jar à partir de là (je vois une marque rouge à côté de lui).
J'espère que cela est utile.
Suivez les étapes que cela fonctionne pour moi: 1.Remove Configurez le chemin de construction depuis Eclipse (chemin de construction) 2.Refresh .
J'utilisais de l'oxygène Eclipse et le problème persiste à chaque fois. Plus tard, j’ai trouvé que si votre espace de travail Eclipse se trouvait dans le répertoire avec des caractères non ascii, javaw.exe ne pouvait pas atteindre le répertoire bin. Supposons que votre nom de répertoire est Work_Hello le signe de suppression du soulignement, nettoyez le projet et exécutez les configurations. Cela a fonctionné pour moi . Référence: https://www.Eclipse.org/forums/index.php/t/1093209/
cela pourrait causer des bibliothèques jdk si vous aviez importé dans jre
cela m’arrive, alors vérifiez jar jars installés
dans Eclipse, cliquez sur Windows> Préférences> Java> Jres installées> cliquez sur Jre et modifiez-le après avoir consulté la liste des fichiers jar. Assurez-vous qu'aucun d'entre eux n'est en jdk ou corrompu,
J'ai fait face à la même erreur, l'erreur était dans l'un des pots externes importés. Après avoir enlevé ce projet de pot a fonctionné pour moi.
En fait, j’ai trouvé la véritable cause fondamentale de ce problème, en ajoutant chaque fichier .jar
manuellement, un par un, car le réponse du même fil } suivant vous suggère de le faire.
Cause:
Vous savez, en tant qu’êtres humains, nous sommes des créatures vraiment paresseuses et c’est pourquoi nous avons la possibilité de sélectionner "Tout sélectionner", ainsi que de raccourcis clavier pour effectuer cette opération . a PDF application requise de génération, je suis allé de cette façon,
Clic droit sur Projet -> Propriétés -> Chemin de construction Java
Vous avez donc deux options:
Sélectionnez uniquement les fichiers JAR où vous voulez et ne soyez pas trop paresseux pour ajouter du texte et d'autres types de fichiers. ou,
Sélectionnez tous les fichiers d'un dossier spécifique dans lequel vous souhaitez ajouter des fichiers JAR, puis supprimez-les un par un, qui ne sont pas des fichiers JAR.
Remarque:
Si vous avez ajouté des fichiers autres que JAR au projet de cette manière en essayant d'ajouter des "bibliothèques", le système vous montrera quelque chose comme:
et continuez à essayer de compiler et à la fin, cela vous donnera l’erreur suivante:
Erreur: Impossible de trouver ou de charger la classe principale er.waterapp.some.MainFileGivenByConfigaration
Alors c'est ça!!! J'espère que j'ai eu la chance d'aider quelqu'un et de lui faire économiser beaucoup de temps. :-)
À votre santé,
Randika
J'ai juste eu ce problème après avoir d'abord eu le problème de Windows 8 qui refusait de mettre à jour mon chemin, quoi que je définisse avec Java_HOME - Java -version a signalé le dernier JDK au lieu de celui que j'avais stocké dans Java_HOME. J'ai finalement réussi à faire fonctionner cela en mettant '% Java_HOME%/bin;' à l’avant de la variable d’environnement de chemin plutôt qu’à la fin. Ensuite, j'ai lancé Eclipse et tout d'un coup, il n'a pas pu trouver ma classe principale alors que ça fonctionnait bien avant cela. Ce que j'ai fait pour le réparer a été intégré aux propriétés du projet, supprimé la bibliothèque JRE existante de l'onglet Bibliothèques, ajouté un nouveau JRE en sélectionnant le bouton "Ajouter une bibliothèque", puis suivi les invites pour installer JRE 7 en tant que JRE par défaut. Maintenant, tout est de retour au travail.
J'ai eu le même problème. Passé quelques heures et finalement changé mon espace de travail dans le dossier local et tout fonctionne maintenant. Peut-être permet de gagner du temps pour les autres . Jon
Cela m'est arrivé lorsque j'ai remplacé les JRE installés par JDK7 au lieu de JRE7. Tout est compilé mais je ne peux rien exécuter à partir d'Eclipse "Eclipse-erreur-pourrait-pas-trouver-ou-charger-classe-principale"
Réparer; revenir à la précédente JRE7.
J'ai eu le même problème après avoir créé un nouveau paquet ("tables") dans mon projet.
Je suis allé à Window -> Show View -> General -> Error Log
et j'ai lu erreur:
JavaBuilder handling ImageBuilderInternalException while building: PizzaService
org.Eclipse.core.internal.resources.ResourceException: Resource '/PizzaService/bin/tables' already exists.
il s'est avéré que j'avais un fichier texte dans un autre dossier source portant le même nom que ce nouveau package. J'ai donc changé le nom du fichier texte de "Tables" en "Tabless" et je pouvais relancer mon projet.
J'espère que cela t'aides.
J'ai eu le même problème avec Eclipse-Mars. J'avais un projet en cours de travail, puis je l'ai mis dans mon référentiel Git. Cela a cassé l'exécution (je suppose parce que les fichiers Java réels ont été déplacés vers l'emplacement git et n'existent plus dans mon espace de travail). J'ai fait une mise à jour> Maven et cela fonctionne maintenant.
Cela se produit principalement parce qu'Eclipse nettoie les fichiers .class
, mais ne les construit pas à nouveau. Vérifiez le dossier bin
, il devrait être vide. Ensuite, vous devriez vérifier s'il y a autre chose qui cause la construction ti fail. Vous avez peut-être ajouté des fichiers jar dans classpath, qu’Eclipse pourrait ne pas être en mesure de trouver.
J'ai passé dix heures à essayer de résoudre ce problème et ce qui m'a seulement aidé à la fin, c'est de remarquer que j'avais dans mes paquets des fichiers (fichiers texte) portant le même nom, comme TODO, README et IMPORTANT. J'ai parcouru tous les paquets de mon projet en renommant ces fichiers (comme TODO_packagename1, TODO_packagename2 ...) et, une fois l'opération terminée, j'ai fermé Eclipse et l'ai redémarré. Alors travaillé!
Renommez la classe avec Ctrl + Shift + R (Windows), le nom de la classe sera changé partout où il est référé, puis suivez la procédure inverse. Dans mon cas, cela était dû à des noms de classe identiques dans plusieurs projets de l'environnement et Eclipse avait du mal à comprendre lequel.
J'ai eu une raison très étrange pour cette erreur. Certains des fichiers référencés dans le référentiel Maven local (~/.m2/...) étaient corrompus. Après avoir supprimé ces applications, puis reconstruit l'application, cela a fonctionné. L'utilisation d'une version plus récente de Maven a exposé les fichiers corrompus.
Ce que j'ai fini par faire est dans Eclipse, copier le projet entier et le coller à nouveau (et lui donner un nom différent bien sûr) Ensuite, lancez votre projet copié. Il devrait vous demander si vous souhaitez qu'il s'exécute en tant qu'applet Java ou en tant qu'application Java. Cliquez sur Java Application et cela devrait fonctionner à nouveau. Ensuite, vous pouvez supprimer le projet d'origine et renommer votre projet actuel en son nom d'origine si vous le souhaitez.
Essayez également de renommer le package avant de modifier la configuration ou de le réinstaller.
J'ai eu cette erreur étrange sans avoir rien changé d'autre que quelques lignes de code. La reconstruction ne fonctionnant pas, Eclipse ne recréerait pas la classe même si le dossier bin était vide. Après avoir renommé le paquet de test à test1, Eclipse a commencé à reconstruire et tout allait bien.
Je courais les mêmes problèmes dans mon petit extrait de code Java
Voici ce que j'ai fait.
J'ai copié tout le contenu de la classe principale.
Suppression de la classe principale Greeter.
Clic droit -> Création d'une nouvelle classe Java avec le nom Greeter
a> vérifié la méthode principale include lors de la création de la classe
le tour est joué !!! J'ai pu exécuter une application Java en cliquant avec le bouton droit de la souris sur la classe principale Greeter.Java.
Juste par curiosité, j'ai de nouveau essayé de supprimer la classe Greeter et de créer une nouvelle classe sans vérifier la méthode principale. Elle ne m'a pas montré exécuter en tant qu'option d'application Java avec un clic droit.