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

Eclipse Java Discussion :

[Debian Wheezy 64 bits / Kepler SR2 / Java 8] Erreur "java.lang.StackOverflowError" à la compilation


Sujet :

Eclipse Java

  1. #1
    Membre chevronné

    Profil pro
    Inscrit en
    Décembre 2011
    Messages
    974
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 974
    Points : 1 825
    Points
    1 825
    Par défaut [Debian Wheezy 64 bits / Kepler SR2 / Java 8] Erreur "java.lang.StackOverflowError" à la compilation
    Bonjour,

    je dois ajouter des fonctionnalités à un programme java. J'ai récupérer le code source et quand j'essaie de le compiler sous Kepler avec jdk 1.8, j'obtiens le message d'erreur suivant:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Internal compiler error: java.lang.StackOverflowError at org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding.substituteInferenceVariable(ParameterizedTypeBinding.java:856)
    Visiblement, ma configuration d'Eclipse pose problème. J'ai tenté entre autre, d'augmenter Xss jusqu'à 2m sans succès.

    Quelqu'un a-t-il une idée?

    merci d'avance

  2. #2
    Rédacteur/Modérateur
    Avatar de Laurent.B
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2004
    Messages
    3 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Novembre 2004
    Messages : 3 468
    Points : 17 036
    Points
    17 036
    Par défaut
    Bonjour,

    Ton Eclipse est-il à jour avec les derniers patchs ?
    Quelle version de JDK / OS / Eclipse ?!

    T'as vérifié que ton paramètre Xss était bien pris en compte ? Une erreur de formulation de celui-ci est aisée...
    Tu devrais nous montrer ton eclipse.ini.

    Avec un JDK 7 ça fonctionne ?
    Responsable FAQ Eclipse | Maintiens et développe un des logiciels destinés aux rédacteurs sur developpez.com
    Gardons toujours à l'esprit que le forum constitue une base documentaire, dont l'utilité et la qualité dépendent du soin apporté à nos questions et nos réponses. Soyons polis, précis (dans le titre et dans le corps des questions), concis, constructifs et faisons de notre mieux pour respecter la langue française et sa grammaire. Merci pour nous (les modérateurs) mais aussi et surtout, merci pour vous.
    Problème solutionné => je vais au bas de la page et je clique sur le bouton (qui suite à mise à jour du forum, a légèrement changé d'aspect).

  3. #3
    Membre chevronné

    Profil pro
    Inscrit en
    Décembre 2011
    Messages
    974
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 974
    Points : 1 825
    Points
    1 825
    Par défaut
    Citation Envoyé par Laurent.B Voir le message
    Bonjour,

    Ton Eclipse est-il à jour avec les derniers patchs ?
    Quelle version de JDK / OS / Eclipse ?!
    java version "1.8.0"
    Java(TM) SE Runtime Environment (build 1.8.0-b132)
    Java HotSpot(TM) 64-Bit Server VM (build 25.0-b70, mixed mode)


    OS: Debian Wheezy (stable 64 bits) à jour

    Eclipse:
    Version: Kepler Service Release 2
    Build id: 20140224-0627

    à jour.

    Version: Kepler Service Release 2
    Build id: 20140224-0627

    Citation Envoyé par Laurent.B Voir le message
    T'as vérifié que ton paramètre Xss était bien pris en compte ? Une erreur de formulation de celui-ci est aisée...
    Tu devrais nous montrer ton eclipse.ini.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    -startup
    plugins/org.eclipse.equinox.launcher_1.3.0.v20130327-1440.jar
    --launcher.library
    plugins/org.eclipse.equinox.launcher.gtk.linux.x86_64_1.1.200.v20140116-2212
    -product
    org.eclipse.epp.package.reporting.product
    --launcher.defaultAction
    openFile
    -showsplash
    org.eclipse.platform
    --launcher.XXMaxPermSize
    256m
    --launcher.defaultAction
    openFile
    --launcher.appendVmargs
    -vmargs
    -Dorg.eclipse.swt.browser.IEVersion=10001
    -Dosgi.requiredJavaVersion=1.6
    -XX:MaxPermSize=256m
    -Xms512m
    -Xmx1024m
    -Xss1024m
    -Djboss.discovery.directory.url=https://devstudio.jboss.com/updates/7.0/devstudio-directory.xml
    Citation Envoyé par Laurent.B Voir le message
    Avec un JDK 7 ça fonctionne ?
    je ne sais pas. Je n'ai pas fais le test

  4. #4
    Rédacteur/Modérateur
    Avatar de Laurent.B
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2004
    Messages
    3 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Novembre 2004
    Messages : 3 468
    Points : 17 036
    Points
    17 036
    Par défaut
    Tu ne devrais pas laisser une valeur excessive de -Xss1024m même si j'ai bien compris que ce n'est pas ça va résoudre ton problème. D'ailleurs un changement de valeur de ce paramètre a-t-il un quelconque impact sur le moment où apparaît l'erreur ?

    Pour vérifier si la valeur Xss est bien prise en compte, il faut aller voir dans le menu Help > About > bouton Installation Details > onglet Configuration mais bon, je doute que ce soit très probant comme vérification.

    A mon avis le test avec le JDK 7 sera plus utile.
    Responsable FAQ Eclipse | Maintiens et développe un des logiciels destinés aux rédacteurs sur developpez.com
    Gardons toujours à l'esprit que le forum constitue une base documentaire, dont l'utilité et la qualité dépendent du soin apporté à nos questions et nos réponses. Soyons polis, précis (dans le titre et dans le corps des questions), concis, constructifs et faisons de notre mieux pour respecter la langue française et sa grammaire. Merci pour nous (les modérateurs) mais aussi et surtout, merci pour vous.
    Problème solutionné => je vais au bas de la page et je clique sur le bouton (qui suite à mise à jour du forum, a légèrement changé d'aspect).

  5. #5
    Membre chevronné

    Profil pro
    Inscrit en
    Décembre 2011
    Messages
    974
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 974
    Points : 1 825
    Points
    1 825
    Par défaut
    Citation Envoyé par Laurent.B Voir le message
    Tu ne devrais pas laisser une valeur excessive de -Xss1024m même si j'ai bien compris que ce n'est pas ça va résoudre ton problème. D'ailleurs un changement de valeur de ce paramètre a-t-il un quelconque impact sur le moment où apparaît l'erreur ?

    Pour vérifier si la valeur Xss est bien prise en compte, il faut aller voir dans le menu Help > About > bouton Installation Details > onglet Configuration mais bon, je doute que ce soit très probant comme vérification.
    Il est bien pris en compte. J'ai fais des essais avec différentes valeurs: même résultat.


    Citation Envoyé par Laurent.B Voir le message
    A mon avis le test avec le JDK 7 sera plus utile.
    Je vais réinstaller le jdk 1.7 pour voir

  6. #6
    Membre chevronné

    Profil pro
    Inscrit en
    Décembre 2011
    Messages
    974
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 974
    Points : 1 825
    Points
    1 825
    Par défaut
    Citation Envoyé par Laurent.B Voir le message

    A mon avis le test avec le JDK 7 sera plus utile.
    Bon avec la configuration de Kepler est celle de base, le programme compile avec JDK 1.7.0_55. Plus de stakeoverflow , mais avec un sacré paquet de warnings (5036 dans 100 fichiers). Tous ces warnings sont dus à des manques de typage sur des Listes et cie ( du style: List maList. Visiblement, une partie du code date de 2000-2004 et n'a pas évolué depuis) et aussi avec des soucis avec les déclarations et utilisations des génériques.

    Visiblement, le jdk 1.8.0 est plus pointilleux que le JDK 1.7.0_55 sur ce point.

    Je devais modifier une partie du code pour y incorporer les lambdas et le traitement de collections avec des Stream. Résultat, dans un premier temps, je vais devoir réduire ce paquet de warnings.

    Merci pour ton aide

  7. #7
    Rédacteur/Modérateur
    Avatar de Laurent.B
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2004
    Messages
    3 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Novembre 2004
    Messages : 3 468
    Points : 17 036
    Points
    17 036
    Par défaut
    Citation Envoyé par plawyx Voir le message
    Bon avec la configuration de Kepler est celle de base, le programme compile avec JDK 1.7.0_55.
    De fait, à mon avis ce problème est un bon candidat à reporter dans le Bugzilla d'Eclipse, parmi ceux-ci https://bugs.eclipse.org/bugs/buglis...resolution=---

    Product: JDT & Component: Core

    Citation Envoyé par plawyx Voir le message
    Plus de stakeoverflow , mais avec un sacré paquet de warnings (5036 dans 100 fichiers). Tous ces warnings sont dus à des manques de typage sur des Listes et cie ( du style: List maList. Visiblement, une partie du code date de 2000-2004 et n'a pas évolué depuis) et aussi avec des soucis avec les déclarations et utilisations des génériques.

    Visiblement, le jdk 1.8.0 est plus pointilleux que le JDK 1.7.0_55 sur ce point.
    Pas vraiment, cette catégorie de warnings est apparue avec la version 5 de Java et l'introduction des types génériques.
    Tu peux effectivement en supprimer un bon paquet mais parfois tu auras du mal car les bibliothèques tiers ne seront évidemment pas non plus codées et compilées pour éviter les warnings de Java 5.

    Soit tu ne tiens pas compte des warnings, soit tu corriges tous ceux que tu peux, soit tu les fait ignorer par Eclipse (via les préférences de ton projet)... C'est à toi de voir, parce que toucher du code existant en ne maitrisant pas forcément les effets de bord, tu risques d'avoir des surprises.

    Sinon, es-tu sûr que c'est une bonne idée de vouloir compiler une vielle application dans la dernière version de Java ou même la précédente ? C'est une application standalone ? Si oui alors ok, ça ne devrait pas poser de problème, si c'est une application style webapp, alors là il faut d'abord t'assurer que l'environnement d'exécution restera compatible... Je te dis ça au cas où car si tu es dans un contexte similaire à ce dernier, le mieux est de continuer à compiler en Java 1.4.2 et tu n'auras plus les warnings...
    Responsable FAQ Eclipse | Maintiens et développe un des logiciels destinés aux rédacteurs sur developpez.com
    Gardons toujours à l'esprit que le forum constitue une base documentaire, dont l'utilité et la qualité dépendent du soin apporté à nos questions et nos réponses. Soyons polis, précis (dans le titre et dans le corps des questions), concis, constructifs et faisons de notre mieux pour respecter la langue française et sa grammaire. Merci pour nous (les modérateurs) mais aussi et surtout, merci pour vous.
    Problème solutionné => je vais au bas de la page et je clique sur le bouton (qui suite à mise à jour du forum, a légèrement changé d'aspect).

  8. #8
    Membre chevronné

    Profil pro
    Inscrit en
    Décembre 2011
    Messages
    974
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 974
    Points : 1 825
    Points
    1 825
    Par défaut
    Citation Envoyé par Laurent.B Voir le message
    Sinon, es-tu sûr que c'est une bonne idée de vouloir compiler une vielle application dans la dernière version de Java ou même la précédente ? C'est une application standalone ? Si oui alors ok, ça ne devrait pas poser de problème, si c'est une application style webapp, alors là il faut d'abord t'assurer que l'environnement d'exécution restera compatible... Je te dis ça au cas où car si tu es dans un contexte similaire à ce dernier, le mieux est de continuer à compiler en Java 1.4.2 et tu n'auras plus les warnings...
    Le but est de profiter des lambdas et Stream pour réécrire les traitements sur les collections, donc jdk 1.8 Dans un premier temps, je vais corriger les warnings évidents pour éviter les effets de bords et ensuite, je verrai bien si cela compile ou pas en jdk 1.8 et aussi peut-être profiter de la sortie de luna pour voir si cela passe ou pas. Soit l'évolution soit la refonte du programme

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 5
    Dernier message: 05/05/2014, 12h14
  2. Problème Tomcat 7 sur Debian Wheezy
    Par garthos dans le forum Tomcat et TomEE
    Réponses: 1
    Dernier message: 02/02/2014, 21h22
  3. Configuration Flash media server sur debian Wheezy
    Par thildouille dans le forum Dynamique
    Réponses: 0
    Dernier message: 12/02/2013, 10h34
  4. booter debian wheezy live en gnome 2
    Par HRS dans le forum Debian
    Réponses: 4
    Dernier message: 06/02/2013, 15h06

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