web-dev-qa-db-fra.com

Erreur fatale: Disposition non valide de Java.lang.String à la valeur

J'ai eu une erreur extrêmement pénible dans Eclipse (dans la console):

Invalid layout of Java.lang.String at value

A fatal error has been detected by the Java Runtime Environment:

Internal Error (javaClasses.cpp:129), pid=15238, tid=140306591237888
fatal error: Invalid layout of preloaded class

 JRE version: 7.0_07-b10
 Java VM: Java HotSpot(TM) 64-Bit Server VM (23.3-b01 mixed mode linux-AMD64 compressed ops)
 Failed to write core dump. Core dumps have been disabled. To enable core dumping, try ulimit -c unlimited" before starting Java again

 An error report file with more information is saved as:
 /home/till/workspace/Encrypt/hs_err_pid15238.log

 If you would like to submit a bug report, please visit:
   http://bugreport.Sun.com/bugreport/crash.jsp

Télécharger le journal

Cela ne me dit rien, car même Eclipse n'affiche aucune erreur (dans l'éditeur de code) ........ C'est un vrai tueur en matière de productivité, car il bloque tout progrès. a des idées sur la façon de résoudre ce problème, répondez s'il vous plaît à cette question.

Merci beaucoup d'avance,

Jusqu'à

51
tilpner

J'ai eu le même problème alors (comme l'a dit Jeff Schultz ici ) j'ai essayé:

Run As -> Application Android

et problème résolu.Mais je ne connais pas la raison qui cause ce problème.J’espère que cela vous aidera!

66
hasanghaforian

Dans le cas d'un projet Android , vous devez supprimer Android Lib de la configuration de lancement de cette classe spécifique. Utilisez la "procédure pas à pas" ci-dessous comme guide. 

  • Projet -> Propriétés -> Paramètres d'exécution/de débogage ;
  • Sélectionnez votre classe et cliquez sur " Modifier ";
  • Ouvrez l'onglet " Classpath " et remove Android Lib à partir de "Bootstrap Entries";
  • Appliquer tout et Exécuter la classe à nouveau.
118
Odyr Sohn

Cela m'est arrivé après:

  1. Insertion d'une classe dans le projet d'application Android où j'avais oublié de supprimer la fonction public static void main(String args[]). (Avait précédemment effectué un test rapide de la classe).
  2. J'ai essayé d'exécuter l'application alors que j'avais ouvert et concentré la classe ci-dessus sur l'éditeur Eclipse.

Ce qui est amusant, c’est que, après l’erreur Eclipse, quelle que soit la classe sur laquelle je me suis concentré, lorsque j’essayais de réexécuter l’application, j’étais coincé avec la même erreur.

Inspiré par Odyr Sohn solution, j’ai réussi à résoudre le problème (à partir de Projet-> Propriétés-> Paramètres d’exécution/de débogage en supprimant la configuration de lancement erronée), mais dès que j’ai essayé d’exécuter l’application de cette classe, la même chose se reproduisait. Lorsque j'ai supprimé la fonction public static void main(String args[]) de la classe, le problème a été résolu pour de bon.

4
TasDiam

Vous devez créer une configuration d'exécution pour une "application Android". Si vous le faites pour "Java Application" par erreur, cette erreur s'affichera.

1
hans lepoeter

J'ai eu un problème similaire sur le fatal error: Invalid layout of preloaded class avec Kepler Service Release 1 sous Windows 7.

Project -> Properties -> Java Build Path -> Order and Export --> check mark any 
unchecked library or Android version and then hit OK. Then run as Android application.
0
Seattle Ninja

Il m'est arrivé la même chose. J'ai créé un TestActivity et je suppose qu'il avait une fonction principale publique statique (String args []). Je suis allé dans les propriétés et ensuite le Run/Debug et supprimé TestActivity et cela a fonctionné très bien.

0
UFGator

J'ai eu le même problème, résolu par:

Exécuter-> Exécuter les configurations;

Cliquez à gauche sur "Application Android" -> Bouton en haut "Nouveau";

puis tapez un nom et "Parcourir" le projet -> fonctionne!

0
Markus