Obtention de java.lang.ClassCastException: javax.swing.KeyStroke lors de la création d'un JSplitPane

StackOverflow https://stackoverflow.com/questions/113915

  •  02-07-2019
  •  | 
  •  

Question

Je reçois une erreur non reproductible aléatoire lors de l'initialisation d'un JSplitPane dans JDK 1.5.0_08. Notez que cela ne se produit pas à chaque fois, mais environ 80% du temps:

Exception in thread "AWT-EventQueue-0" java.lang.ClassCastException: javax.swing.KeyStroke
at java.util.TreeMap.compare(TreeMap.java:1093)
at java.util.TreeMap.put(TreeMap.java:465)
at java.util.TreeSet.add(TreeSet.java:210)
at javax.swing.plaf.basic.BasicSplitPaneUI.installDefaults(BasicSplitPaneUI.java:364)
at javax.swing.plaf.basic.BasicSplitPaneUI.installUI(BasicSplitPaneUI.java:300)
at javax.swing.JComponent.setUI(JComponent.java:652)
at javax.swing.JSplitPane.setUI(JSplitPane.java:350)
at javax.swing.JSplitPane.updateUI(JSplitPane.java:378)
at javax.swing.JSplitPane.<init>(JSplitPane.java:332)
at javax.swing.JSplitPane.<init>(JSplitPane.java:287)
    ...

Des pensées? J'ai essayé de nettoyer et de reconstruire mon projet afin de minimiser la probabilité de corruption des fichiers de classe.

Modifier # 1 Voir http: // bugs.sun.com/bugdatabase/view_bug.do?bug_id=6434148 - semble être un bogue du JDK. Des solutions de contournement connues? Aucun ne figure sur la page de saisie du bogue.

Était-ce utile?

La solution

Après avoir essayé Google sur le site bugs.sun.com, il semble qu'il s'agisse d'un bogue du JDK qui n'a été corrigé que dans le JDK 6.

Voir http://bugs.sun.com/bugdatabase/view_bug. bug_id = 6434148

Autres conseils

La même exception s’est produite lorsque j’ai mis à niveau java verion et db visualizer dint support jre7. et depuis La prise en charge de Java 7 a été introduite dans DbVisualizer 8.0 pour Windows et Linux / UNIX.

La prise en charge de Java 7 sur Mac OS X a été introduite dans DbVisualizer 9.1.

Donc, la solution qui a fonctionné pour moi: Windows / Unix / Linux:     Le répertoire d’installation de DbVisualizer contient un répertoire .install4j,     Dans ce répertoire, créez un fichier nommé pref_jre.cfg s'il n'existe pas déjà,     Ouvrez le fichier dans un éditeur de texte,     Ajoutez le chemin d'accès complet au répertoire racine de l'installation Java que vous souhaitez utiliser.     Exemple: C: \ Program Files \ Java \ jre7

java.lang.ClassCastException: javax.swing.KeyStroke cannot be cast to java.lang.Comparable....

Si vous obtenez l'erreur ci-dessus après l'installation de java 7 dans dbviz puis ajoutez des variables d'environnement comme: 'DBVIS_JAVA_HOME' en tant que 'Nom de la variable' et chemin java comme par ex. "C: \ SWDTOOLS \ IBM \ RAD85 \ runtimes \ base_v7 \ java"

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top