IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

avec Java Discussion :

Message d'erreur dans Java


Sujet :

avec Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    Urbaniste
    Inscrit en
    Avril 2014
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2014
    Messages : 1
    Par défaut Message d'erreur dans Java
    Bonjour,

    je viens tout juste de m'inscrire au forum Développez.com. Je débute dans le monde de la programmation et je vous écrit parce que j'ai un problème dans l'utilisation de java avec la plateforme de développement Éclipse.

    Voici mon message d'erreur:

    Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "main"
    Exception in thread "Thread-0" java.lang.OutOfMemory: java heap space

    J'ai ajouté de la mémoire heap space mais le problème persiste. Aussi quand je fais rouler mon application on m'indique "Pickup Java -Option Xmx128m" mais l'application que je fais rouler nécessite plus de 128m de mémoire.

    J'espère que vous pourrez m'aider ou sinon j'aimerais bien connaitre une méthode ou un tutorial pouvant me sortir de cette impasse.

    Merci, bonne journée.

  2. #2
    Modérateur
    Avatar de dinobogan
    Homme Profil pro
    ingénieur
    Inscrit en
    Juin 2007
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : ingénieur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 4 073
    Par défaut
    Un programme Java fonctionne sur une machine virtuelle. Cette machine n'utilisera pas toute la RAM disponible de ton ordinateur. Elle utilisera au maximum ce qui lui est donné au démarrage.
    Tu peux augmenter la taille de la RAM utilisable par la machine virtuelle en ajoutant un paramètre à la ligne de commande qui lance ton programme : "-Xmx128m".
    Cependant, ce genre de problème survient souvent sur un mauvais choix de stockage. Peut-être stockes-tu beaucoup trop d'informations inutiles du genre lecture d'un fichier avec stockage complet en RAM alors qu'une lecture ligne par ligne serait suffisante. Autre exemple courant : tu stockes des informations dans une liste sans jamais la vider. La liste prend de plus en plus de place jusqu'à ce que la machine virtuelle s'arrête brutalement car elle a utilisé toute la RAM que ton ordinateur lui a prêté.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
    Que la force de la puissance soit avec le courage de ta sagesse.

  3. #3
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Ouais enfin, 128M, même mon grille-pain trouve que c'est ridiculement peu. (Enfin bon, je suppose qu'un grille-pain capable de me donner son opinion a forcément besoin de plus de mémoire.)
    Si tu essayais déjà de remplacer par 1G pour voir si ça va mieux ? Il sera toujours temps de faire plus petit si ça a l'air de passer...
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  4. #4
    Membre éclairé
    Homme Profil pro
    :-)
    Inscrit en
    Mars 2014
    Messages
    194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : :-)
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Mars 2014
    Messages : 194
    Par défaut
    Bonjour,

    Citation Envoyé par thelvin Voir le message
    Ouais enfin, 128M, même mon grille-pain trouve que c'est ridiculement peu.
    Aahahah!tu m'as tue!

    Bon plus serieusement,je suis moi aussi un debutant et,je ne vois pas comment tu arrives a "saturer" ta RAM .Je pensais que ce genre de prb ne devait arrivait qu'au pro avec des codes plus lourd qui doivent necessiter plus de RAM.
    Apres je ne sais pas exactement que contient deja ta RAM(et don de l'espace a utilise qu'il te reste),qd tu lances ton programme JAVA,...le prb vient peut etre de la.Moi je pense plutot comme Dinobogan,que c'est un prb dans ton code avant tout.Montre le un peu ,si je peux t'aider je le ferais,sinon tant pis...

    En esperant t'avoir aidé bye.

  5. #5
    Membre expérimenté

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2011
    Messages
    122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2011
    Messages : 122
    Par défaut
    Essai avec ce petit bout!

    JavaDOc :

    Runs the garbage collector.
    Calling the gc method suggests that the Java Virtual Machine expend effort toward recycling unused objects in order to make the memory they currently occupy available for quick reuse. When control returns from the method call, the Java Virtual Machine has made a best effort to reclaim space from all discarded objects.

  6. #6
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Salut,

    Citation Envoyé par AASProni Voir le message
    Essai avec ce petit bout!

    Surtout pas malheureux !


    Non seulement cela ne servira à rien, mais mal utilisé cela pourrait plomber les performances.
    Hormis pour des tests (et encore seulement si on sait ce que l'on fait), il ne faut jamais appeler System.gc().



    Pour un OutOfMemoryError il y a deux solutions :
    • Soit c'est "normal" car l'application a besoin de beaucoup de mémoire, et dans ce cas il faut augmenter la taille du heap via -Xmx
    • Soit c'est "anormal" car l'application ne devrait pas utiliser autant de mémoire, et dans ce cas il faut revoir l'algo pour trouver les "fuites de mémoire".
      (en fait ce n'est pas vraiment des fuites, mais plutôt des objets qui sont conservé inutilement)



    a++

  7. #7
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Citation Envoyé par AASProni Voir le message
    Essai avec ce petit bout!
    Qui est totalement inutile est hors propos

    Non seulement, comme dit pas adiguba, ça peux plomber les performance, mais la jvm te garantis que le GC a bien été effectué à fond avant de te lancer un OutOfMemory. Ca ne va pas magiquement trouver de la mémoire

Discussions similaires

  1. Réponses: 4
    Dernier message: 24/08/2006, 10h19
  2. message d'erreur dans sous formulaire
    Par tojiji dans le forum Access
    Réponses: 6
    Dernier message: 28/07/2006, 12h09
  3. Message d'erreur en java
    Par Elandril dans le forum AWT/Swing
    Réponses: 6
    Dernier message: 05/03/2006, 17h28
  4. Message d'erreur dans phpMyadmin
    Par riadh100 dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 26/09/2005, 14h03
  5. [Tiles]message d'erreur dans un footer (form mal rempli)
    Par clement42 dans le forum Struts 1
    Réponses: 5
    Dernier message: 09/06/2005, 14h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo