En parcourant l'exemple de code Scala sur le site Web de Scala, nous avons rencontré une erreur gênante en essayant de l'exécuter.
Voici le code: http://www.scala-lang.org/node/45 . En l'exécutant sur Eclipse, j'ai reçu le message "L'éditeur ne contient pas de type principal" qui l'empêche de s'exécuter.
Dois-je faire quelque chose ... c.-à-d. Diviser ce fichier en plusieurs fichiers ou quoi?
J'ai beaucoup ce problème avec Eclipse et Scala. Cela aide si vous nettoyez votre espace de travail et reconstruisez votre projet.
Parfois, Eclipse ne reconnaît pas correctement les fichiers à recompiler :(
Edit: Le code fonctionne bien dans Eclipse
Dans Eclipse, assurez-vous d’ajouter votre dossier source dans les propriétés du projet -> chemin de construction Java -> source. Sinon, la fonction main () peut ne pas être incluse dans votre projet.
Vous devez vous assurer que vos fichiers .Java se trouvent dans le dossier .src dans Eclipse. J'ai eu le même problème jusqu'à ce que je l'aie compris.
Un moyen plus simple est de fermer votre projet et de le rouvrir!
Assurez-vous simplement que le dossier dans lequel vous travaillez est ajouté au chemin créé:
right-click
votre dossier, -> build Path
-> Use as source Folder
et il devrait maintenant y trouver main
j'espère que cela t'aides
"" "" "right-click
votre dossier, -> build Path
-> Use as source Folder
" "" Merci.
Cela résout le problème,
J'ai eu le même problème. J'ai essayé toutes sortes de choses. Et j'ai appris que
Choses que j'ai faites:
Propriétés du projet >> Chemin de construction Java >> Source
Cela a résolu l'erreur.
Une solution rapide:
Commencez par exclure le package: Cliquez avec le bouton droit de la souris sur le package source >> Chemin de construction >> Exclure
Puis incluez-le à l’arrière: Faites un clic droit sur le paquet source >> Chemin de construction >> Inclure
Ce que vous devez faire, c'est créer un projet Java, mais assurez-vous de placer ce fichier dans le fichier de package de ce projet, sinon vous rencontrerez la même erreur.
***
Il suffit de fermer et de rouvrir
*** votre projet dans Eclipse. Parfois, il y a des problèmes de liaison. Cela a résolu mon problème
Vous pouvez essayer d’exécuter la fonction principale à partir de la barre latérale d’Eclipse.
vous devriez créer votre fichier en
en sélectionnant sur le côté droit, vous trouverez votre nom de fichier,
sous cela trouvera le dossier src leur leur clic droit sélectionnez -> option de classe
leur votre fichier devrait être créé
Assurez-vous que votre fichier .Java est présent dans le package str ou dans un autre package. Si le fichier Java avec la fonction principale se trouve en dehors de tous les packages, cette erreur est générée.
Ce code est valide. Avez-vous essayé de le compiler à la main avec du scalac? De plus, avez-vous appelé votre fichier "carnet d'adresses", en minuscule, comme le nom de l'objet?
En outre, j’ai constaté que pour une raison quelconque, Eclipse avait défini la classe principale sur ".addressbook" au lieu de "addressbook".
Le fichier que vous avez créé est peut-être en dehors du dossier src (source). Essayer d'appeler l'objet de classe (à partir du fichier situé dans le dossier src) à partir du fichier .Java situé en dehors du dossier source provoque la même erreur. Copiez le fichier .Java dans le dossier source, puis générez-le. L'erreur aura disparu.
exécutez "Eclipse -clean -refresh" à partir de la ligne de commande. Cela a résolu le problème pour moi lorsque toutes les autres solutions ont échoué.
J'ai juste eu ce problème aussi. La solution consiste à s'assurer qu'Eclipse a créé le projet en tant que projet Java. Créez simplement un nouveau projet Java et copiez votre classe dans le dossier src (et importez les éventuelles dépendances). Cela devrait résoudre le problème.
J'ai eu le même problème. J'ai eu la classe principale du paquet src, dans un autre dossier. Je le déplace dans et corrige le dossier et résolu
S'il s'agit d'un projet maven, vérifiez que le fichier Java est créé sous src/main/Java
Si vous n'obtenez pas, veuillez modifier le chemin JRE et créer les fichiers Java dans la structure de dossiers ci-dessus.
Cela pourrait être le problème avec le chemin de génération Java . Essayez les étapes suivantes:
Cela devrait résoudre le problème.
La réponse correcte est: la bibliothèque Scala doit précéder la bibliothèque JRE dans le chemin de construction.
Allez à Java Buildpath> Order and Export et déplacez la bibliothèque Scala vers le haut.
J'ai eu ce problème avec un projet Java que j'ai importé du système de fichiers (sous Eclipse Helios). Voici un indice: le code src ne semble pas avoir été compilé du tout, car aucun répertoire "bin" ne s'est affiché.
Je devais créer un projet Java à partir de rien (à l'aide de l'assistant), puis comparer les fichiers .project
des projets inutilisés et des projets en activité.
Le projet donnant "L'éditeur ne contient pas de type principal" avait ceci comme "buildSpec" dans le fichier .project:
<buildSpec>
</buildSpec>
Mais le projet de travail avait ceci comme "buildSpec":
<buildSpec>
<buildCommand>
<name>org.Eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
Je l'ai copié dans et le projet importé a fonctionné.
Je sais que ma réponse est pour Java, mais il en va peut-être de même pour votre projet Scala.
J'ai aussi ce problème après avoir changé le dossier source. La solution qui a fonctionné est simplement de modifier le fichier et de l’enregistrer.
Sur la raison d'une erreur de: "L'éditeur ne contient pas de type principal"
Erreur rencontrée dans: Eclipse Neon
Système d'exploitation: Windows 10 Pro
Lorsque vous copiez vos dossiers source à partir d'une clé USB et que vous oubliez le dossier Eclipse_Projects.metadata.
Outre une nouvelle installation, vous devrez vous assurer de fusionner les fichiers de (Thrumb-drive) F: Eclipse_Projects.metadata.plugins.
Ces plug-ins sont les éléments de code de bibliothèque extraits du SDK lors de la création d'une classe. Tout dépend vraiment de ce que vous ----- importez javax.swing. *; ----- dans votre fichier. En raison de votre transfert, assurez-vous de fusionner les ------ Eclipse_Projects.metadata.plugins ------ manuellement avec un simple copier-coller, tout en acceptant la fonctionnalité de saut des plugins déjà présents dans votre dossier.
Pour Windows 10: vos dossiers de travail suivent un schéma similaire de hiérarchie des fichiers.
C: Utilisateurs> Ordinateur portable Mikes> espace de travail> .metadata> .plugins <--- fusionner les plugins ici
Pour moi, dans Eclipse 3.6, ce problème se produit lorsque ma méthode principale n'est pas publique. J'ai causé le problème en ayant une méthode principale comme celle-ci:
static void main(String[] args)
Le dubugger était incapable de détecter cela par lui-même. Je suis assez surpris qu'Eclipse ait négligé cela.
Une dernière chose à vérifier: assurez-vous que votre fichier source contient la déclaration de package correcte correspondant au sous-répertoire dans lequel elle se trouve. manque la déclaration de paquet.
Suivez les étapes ci-dessous:
Ont fait face au même problème, résolu en cliquant avec le bouton droit de la souris sur la méthode principale dans la vue d'ensemble et en l'exécutant en tant qu'application Java.
Dans le pire des cas, créez à nouveau le projet avec toutes les importations depuis le début. Dans mon cas, aucune des autres options ne fonctionnait. Ce type d'erreur suggère qu'il y a une erreur dans les paramètres du projet. Une fois, j'ai réussi à le résoudre, mais une fois que d'autres développements ont été réalisés, l'erreur est revenue. Recréer tout depuis le début m'a aidé à comprendre et à optimiser certains liens, et maintenant je suis convaincu que cela fonctionne correctement.
Dans mon cas particulier "Hello World", ce problème était dû au fait que ma méthode main()
était à l'intérieur de Scala class
.
Je mets la méthode main()
sous la Scala object
et l'erreur a disparu.
En effet, Scala object
en termes Java est l’entité qui ne contient que des membres et des méthodes statiques.
C'est pourquoi la fonction public static void main()
de Java dans Scala doit être placée sous object
.
(Scala class
ne peut pas contenir d'éléments statiques)
Fichier >> Importer >> Projets existants dans Workspace >> Sélectionnez Archive Filed >> Parcourir et localiser le fichier >> Terminer. S'il est déjà importé d'une autre manière, supprimez-le et essayez-le de cette façon. J'avais le même problème jusqu'à ce que j'essaye.
Essayez 'Update Project'. Une fois que j'ai fait cela, l'option Exécuter en tant qu'application Java est apparue.