Erreur Eclipse ": impossible de trouver ou de charger la classe principale"

j'ai un projet à eclipse sur mon ordinateur portable que j'ai poussé à Git https://github.com/chrisbramm/LastFM-History-Graph.git

il fonctionne entièrement sur mon ordinateur portable et exécute / construit sans problème, mais sur mon bureau, il ne éclipse pas donne l'erreur

Erreur

: impossible de trouver ou de charger la classe principale lastfmhistoryguis.InputPanel

j'ai essayé de construire le projet de:

Project>Build Project

mais il ne s'est rien passé. J'ai mis les variables PATH sur cet ordinateur à JRE6, JRE7 et JDK 1.7.0 même si elles ne sont pas sur mon ordinateur portable.

I did have Jar file ( last.fm-bindings-0.1.1.jar ) qui était dans mon dossier .classpath qui était dans C:UsersChrisDownloads dossier sur mon ordinateur portable donc il n'a pas été inclus dans l'arbre git que j'ai récemment j'ai apporté dans le dossier du projet et je me suis engagé, mais je ne sais pas si je l'ai fait correctement. Est-ce que cela poserait aussi un problème, mais il n'y a pas d'argument principal là-dedans.

Je ne peux pas travailler maintenant, ce que je dois vérifier/changer.

73
demandé sur Sam Farajpour Ghamari 2012-06-28 02:45:16

30 réponses

dans votre chemin de classe vous utilisez un chemin absolu mais vous avez déplacé le projet sur une nouvelle machine avec très 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 des pots avec votre projet), utiliser le chemin relatif:

dans votre .classpath changement

<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"/>
30
répondu poulter7 2012-06-27 23:06:44

si vous créez une classe java avec public static void main(String[] args) , Eclipse lancera cette méthode principale pour vous en cliquant droit sur le fichier lui-même, ou sur le fichier dans l'Explorateur de projet, puis en choisissant:

"Exécuter" -> "Java Application."

une fois que vous avez fait cela, Eclipse stocke des informations sur votre classe, de sorte que vous pouvez facilement exécuter la classe à nouveau à partir du menu Run As (bouton vert Play sur la barre d'outils) ou à partir de L'exécution Dialogue Configurations.

si vous déplacez par la suite la classe java (manuellement, ou cependant), choisissez à nouveau

"Exécuter" -> "Java Application", De

à partir du nouvel emplacement, Eclipse exécutera la configuration stockée d'origine, tentera d'invoquer cette classe à partir de son emplacement d'origine, ce qui provoque cette erreur.

pour moi, le correctif était d'aller aux configurations de course, (Green Play Bouton - > Exécuter les Configurations) et supprimer toutes les références à la classe. La prochaine fois que vous courrez

"Exécuter" -> "Java Application"

Eclipse va écrire une nouvelle configuration pour la classe déplacée, et l'erreur disparaîtra.

54
répondu Blamkin86 2015-08-25 20:34:53

tl; dr : Nettoyez tout votre chemin de construction et tout ce que vous y avez ajouté manuellement. Cela comprend des sources, des projets et des bibliothèques supplémentaires.

  • Projet -> Clean
  • assurez-Project -> Build est automatiquement active
  • Projet -> Propriétés -> Java Build Path -> Bibliothèques: Supprimer toutes externes libs vous avez déjà ajouté . Ne pas supprimer les bibliothèques standards comme la Bibliothèque du système JRE.
  • Essayez d'exécuter votre classe principale maintenant. La "classe n'a pas pu être trouvé / charge" erreur devrait avoir disparu. Essayez d'ajouter vos lèvres externes / pots un après l'autre.

raison derrière ceci: le compilateur a eu des problèmes reliant les bibliothèques au projet. Il a échoué et produit un message d'erreur erroné.

dans mon cas, il aurait dû être quelque chose comme" ne pouvait pas ajouter AutoHotkey.dll vers le chemin de construction" parce que c'est ce que fait le compilateur échouer.


si cela ne fonctionne toujours pas, jetez un oeil à L'ErrorLog intégré D'Eclipse :

Window -> Show View -> Général -> Journal Des Erreurs

40
répondu Blauhirn 2016-01-24 16:11:40

j'ai fait toutes les choses mentionnées ci-dessus, mais aucune n'a travaillé pour moi

Mon problème résolu avec ci-dessous.

clic droit sur votre projet>>propriétés>>JavaBuildPath>>bibliothèques.

enlever la jarre qui porte un drapeau rouge.

si vous avez encore le problème essayez la solution ci-dessous, cela a fonctionné pour moi quand j'ai fait face à ce problème deuxième fois:

clic droit projet>>Propriétés>>Java Build Path>>Bibliothèques, Supprimer et Ajouter de la Bibliothèque. (Choisir la bibliothèque système JRE )

14
répondu Atul Chavan 2016-12-25 13:41:59

j'ai fait face à un problème similaire dans mon projet Maven webapp après avoir passé près d'une heure , j'ai trouvé une solution qui a fonctionné pour moi .J'ai tapé la commande maven suivante et ça a marché

mvn clean install-U

Je ne sais pas la raison exacte derrière elle.

13
répondu rajeev pani.. 2014-07-23 13:17:48

je suppose que vous avez importé le projet dans votre installation eclipse de bureau? Si c'est le cas, vous devez simplement sélectionner Projet > Nettoyer. Alors reconstruisez votre projet. Ça a marché comme un charme pour moi.

9
répondu Cris CodeCruncher 2014-02-26 17:30:49

j'ai eu le même problème et je l'ai résolu en utilisant:

Eclipse Mars
Egit
Github
Maven Project

le problème est que j'ai mis mon projet maven à la disposition de github. Il déplacé mon projet dans mon dossier github.

Solution:

  • Fermer Eclipse
  • supprimer le dossier de métadonnées à l'intérieur de votre espace de travail
  • Redémarrer Eclipse

L'écran de démarrage s'affiche.

  • fermez l'écran de démarrage
  • faites un clic Droit dans l'explorateur de packages
  • Choisi "importer un projet maven",
  • naviguez vers votre dossier github et importez le projet maven.

après cela mon projet compilé avec succès.

8
répondu Matthis Kohli 2015-11-03 17:57:52

vérifiez que votre projet a un constructeur par:

  • vérifier les propriétés du projet (dans l ' "Explorateur de paquets", clic droit sur le projet, sélectionnez "Propriétés"), la deuxième section est "constructeurs", et il doit tenir la valeur par défaut "Java Builder"
  • ou chercher dans l' ".projet" fichier (en .../workspace / votreprojetname/.projet) la section "buildSpec" ne doit pas être vide.

il doit y avoir d'autres mais ce que j'ai fait, c'est:

  • arrêter eclipse
  • modifier la .fichier "project" pour ajouter la section" buildSpec
  • redémarrer eclipse

Un bon minimale de java ".projet" fichier devrait ressembler à:

<?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>
6
répondu loic.jaouen 2013-10-24 16:20:46

Eh bien, ce qui suit a fonctionné pour moi...

  1. est entré dans le dossier du projet (à l'intérieur de workspace )
  2. ensuite, supprimer le bin dossier
  3. Alors, Nettoyé projet / projets (dans Eclipse)
  4. construit/exécuter à partir d'Eclipse.
5
répondu DeeCode 2015-08-28 13:26:10

une chose semblable m'est arrivée à quelques reprises, la seule façon que j'ai su pour corriger cela était de supprimer le dossier de métadonnées. Heureusement, j'ai trouvé un autre moyen.

Essayez d'aller à projet properties > Java Build Path > de l'Ordre Et de l'Exportation (onglet) > sélectionner tout (ou essayer de jouer avec les cases à cocher).

cela devrait provoquer une reconstruction complète du projet et éclipser pour voir la classe principale.

ajout: j'ai remarqué que ce bug se produit lorsque vous avez beaucoup de projets dans un espace de travail et que certains d'entre eux sont mal configurés(le point d'exclamation rouge apparaît). La correction du chemin de construction 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 corriger un problème.

4
répondu Dmitry Avgustis 2015-02-20 12:05:06

ce problème est également causé lorsque 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 ça n'a pas marché. J'ai changé mon espace de travail, maintenant, ne contient que des caractères anglais dans son chemin, et maintenant le projet est construit sans aucun problème.

3
répondu Stavros Stefanakakis 2013-11-23 13:38:45

j'ai rencontré le même problème, mais dans mon cas il a été causé par un dossier source manquant (vide) (il existe dans le projet original, mais pas dans le dépôt GIT parce qu'il est vide).

Après avoir créé le dossier manquant tout fonctionne.

2
répondu nothrem 2013-01-25 15:03:56

j'ai reçu cette erreur aussi, juste après avoir déplacé quelques ressources. En vérifiant le journal des erreurs, J'ai vu Qu'Eclipse ne pouvait pas faire de compilation car il ne pouvait pas supprimer un fichier/dossier. Essayez de supprimer manuellement le dossier" bin " (ou ce qu'on appelle pour vous).

qui a fait l'affaire pour moi, au moins.

2
répondu Zar 2013-03-12 19:28:13

j'ai rencontré cette erreur aujourd'hui parce que j'ai mis en place un programme hello world et puis j'ai 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é Run-> Run Configurations et puis sous Main Class j'ai cliqué search et il a trouvé mon nouveau nom de classe et l'a remplacé par le nouveau nom correct dans le texte que j'ai collé. C'est un problème de débutant je sais mais il est aussi facile à réparer. J'espère que cela aide quelqu'un! Douglas

2
répondu Douglas E Knapp 2014-02-12 10:49:51

j'ai eu le même problème avec correct .classpath fichier, et bientôt trouvé en fait ce n'est pas la .classpath fichier compté (après que j'ai corrigé ce problème, je remplace le traitable .classpath fichier avec l'original, le projet a toujours fonctionné, ce qui signifie le .classpath fichier n'a pas été le cas)

comme c'est un projet Maven, tout ce que j'ai fait c'est:

  1. mvn eclipse: clean
  2. supprimer projet eclipse
  3. importer le projet
  4. fait

espère que cela aide!

2
répondu karl li 2014-02-12 22:32:43

si vous utilisez eclipse, alors les étapes suivantes résoudront votre problème:

Aller à la Run -> Run Configurations -> Classe Principale de Recherche -> Recherchez votre classe manuellement -> Appliquer -> Exécuter

2
répondu 2015-05-19 10:36:13

j'ai eu cette erreur. C'était parce que j'avais static void main(String[] args)

plutôt public static void main(String[] args)

j'ai passé près d'une heure à essayer de comprendre.

Note: la seule différence est que je n'ai pas déclaré main pour être public

2
répondu Alex Spencer 2015-08-28 13:29:59

Mon Main class ne peut pas être trouvé ou chargé problème est causé par une intéressante raison.

dans notre projet, nous utilisons Maven comme outil de construction et mon main class extends une classe, qui est sur le class path mais sa portée était test , tandis que le main class n'est pas sous le paquet d'essai.

si votre classe principale extends a Classe, essayez d'abord d'exécuter votre main class en supprimant la partie extends . Si il fonctionne, vous comprendrez au moins que le problème n'est pas à cause de run configuration ou eclipse mais la classe, votre main class extends .

2
répondu Ad Infinitum 2016-07-12 11:17:02

j'ai eu le même problème. Passé quelques heures et finalement changé mon espace de travail en dossier local et tout fonctionne maintenant. Peut-être permet de gagner du temps pour les autres. Jon

1
répondu user1362446 2013-10-09 08:50:34

allez simplement à votre explorateur de paquets et appuyez sur F5, ou pour certains ordinateurs portables fn+F5. La raison est que eclipse pense que les fichiers sont quelque part, mais les fichiers sont en fait ailleurs. Par rafraîchissante, vous mettez tous les deux sur la même page. Ne vous inquiétez pas, vous ne perdrez rien, mais si vous voulez être très prudent, sauvegardez simplement les fichiers de votre dossier java projects vers un endroit sûr.

1
répondu Steve Lam 2015-01-13 16:08:39

ce sont les étapes simples, qui m'a aidé à résoudre ce problème.

  1. fermez l'éclipse
  2. Supprimer".métadonnées " dans votre espace de travail. (peut-être un dossier caché)
  3. Ouvrir l'éclipse (il va automatiquement créer ".les métadonnées" dans le dossier de votre espace de travail)
  4. Essayez d'exécuter le programme.
1
répondu Soham Darji 2015-05-20 09:48:54

si votre code est bon et que vous savez que vous avez un problème D'éclipse, cela le résoudra.

vous pouvez simplement supprimer $yourproject/.classpath $votreprojet/.projet , et $yourworkspace/.métadonnées. Quelqu'un d'autre a mentionné cette option. Mais ça fera exploser tout votre espace de travail. À la place:

  1. Supprimer .et de classpath .projet de votre projet
  2. supprimer votre projet dans eclipse. ne pas vérifier supprimer le projet contenu sur le disque.
  3. Maintenant, dans un explorateur de fichiers, allez dans $yourworkspace/.métadonnées.
  4. rechercher $votre nom de projet
  5. supprimez tout ce que vous trouvez. Il devrait être sûr de supprimer n'importe quoi dans le .les métadonnées répertoire.
  6. Dans eclipse: Fichier > Importer > Général > Projets à partir du Dossier ou de l'Archive > $votreprojet > terminer
  7. clic droit sur votre projet > propriétés > Java Construire un chemin > onglet Source
  8. sélectionnez tous les dossiers source, supprimer.
  9. Ajouter un dossier, sélectionnez src (quel que soit le nom de votre dossier src) et ajoutez-le
  10. allez à l'onglet Bibliothèques
  11. ajoutez n'importe quel bocal à votre chemin de construction ici. Il ne devrait plus y avoir d'erreurs sur votre projet maintenant.
  12. exécutez votre projet comme vous le feriez normalement.
1
répondu Brent Sandstrom 2017-12-21 16:52:36

vérifiez le journal des erreurs espace de travail (Windows-> Show View -> Error log). Si vous voyez que l'un des jar importés est corrompu, supprimez le dossier de dépôt correspondant et réimportez.

1
répondu Raman 2018-06-03 19:46:48

la plupart du temps, cela arrive, parce Qu'Eclipse nettoie les fichiers .class , mais ne les construisez plus. Vérifiez le dossier bin , il doit être vide. Ensuite, vous devriez vérifier, est-il autre chose, qui est à l'origine de construire ti échouer. Vous avez peut-être ajouté des pots dans classpath, Qu'Eclipse ne pourra peut-être pas trouver.

0
répondu user3687451 2014-06-26 11:44:39

essayez aussi de renommer le paquet avant de changer la configuration ou de le réinstaller.

J'ai eu cette erreur bizarre sans avoir changé autre chose que quelques lignes de code. La reconstruction ne fonctionnait pas, Eclipse ne recréerait pas la classe même si le dossier bin était vide. Après avoir renommé le paquet de test en test1 Eclipse a commencé la reconstruction et tout allait bien.

0
répondu user1813222 2014-07-20 18:24:30

je viens d'avoir ce problème après avoir d'abord eu le problème de Windows 8 refusant de mettre à jour mon chemin, peu importe ce que j'ai mis JAVA_HOME to - java-version signalé le dernier JDK au lieu de celui que j'ai stocké dans JAVA_HOME. J'ai finalement obtenu que cela fonctionne en mettant '%JAVA_HOME%/bin;' à l'avant de la variable d'environnement path au lieu de la fin. Puis J'ai lancé Eclipse et tout à coup il ne pouvait pas trouver ma classe principale quand il a fonctionné très bien avant cela. Ce que j'ai fait pour le réparer est allé dans le propriétés du projet, suppression de la bibliothèque JRE existante de l'onglet Bibliothèques, ajout d'une nouvelle bibliothèque JRE en sélectionnant le bouton "Ajouter une bibliothèque", puis suivi les invites à installer JRE 7 comme JRE par défaut. Maintenant, tout est de retour au travail.

0
répondu Howard Roark 2014-08-14 11:30:42

j'ai trouvé une autre solution dans mon cas ce problème: Eclipse->Preferences->Java->Installed JRE puis appuyez sur Recherche bouton. Sélectionnez le dossier dans Linux /usr puis Eclipse a trouvé tous les JVM.

sélectionnez une autre JVM trop actuelle . C'est résolu pour mon cas.

0
répondu Carllo 2014-10-16 15:49:35

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.

comme il s'est avéré que j'avais un fichier texte dans un autre dossier source avec le même nom que ce nouveau package. Donc j'ai changé le nom du fichier texte de "Tables" à "Tabless" et je pourrais exécuter mon projet à nouveau.

Espérons que cette aide.

0
répondu Tomasz Mularczyk 2015-03-27 03:15:59

j'ai fait face à la même erreur, l'erreur était dans l'un des importé externe pots. Après avoir retiré ce projet de pot a fonctionné pour moi.

0
répondu knowledge flow 2015-04-10 11:35:28

m'est arrivé quand j'ai changé JRES installé en JDK7 au lieu de JRE7. Tout compilé, mais je ne pouvais pas exécuter quoi que ce soit à partir d'Eclipse eclipse-erreur-peut-pas-trouver-ou-la charge principale de la classe"

Fix; revenir à la précédente JRE7.

0
répondu Vortex 2015-04-13 20:13:40