Obtendo java.lang.ClassCastException: javax.swing.KeyStroke ao criar um JSplitPane

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

  •  02-07-2019
  •  | 
  •  

Pergunta

Estou recebendo um erro unreproducible aleatória quando inicializar um JSplitPane com JDK 1.5.0_08. Note que isso não ocorre cada vez, mas cerca de 80% do tempo:

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)
    ...

Pensamentos? Eu tentei limpar e reconstruir meu projeto de modo a minimizar a probabilidade de arquivos de classe corrompidos.

Edit # 1 Consulte http: // bugs.sun.com/bugdatabase/view_bug.do?bug_id=6434148 - parece ser um bug JDK. Quaisquer soluções conhecidas? Nenhum estão listados na página de entrada bug.

Foi útil?

Solução

Depois de fazer algumas pesquisas no Google em bugs.sun.com, isso se parece com isso pode ser um erro do JDK que só foi corrigida no JDK 6.

Consulte http://bugs.sun.com/bugdatabase/view_bug. Do? bug_id = 6434148

Outras dicas

A mesma exceção tinha começado lançada quando eu tinha atualizado java verion e db visualizador força apoio jre7. e desde O suporte para Java 7 foi introduzido em DbVisualizer 8.0 para Windows e Linux / UNIX.

O suporte para Java 7 no Mac OS X foi introduzido em DbVisualizer 9.1.

Assim solução que funcionou para mim: Windows / Unix / Linux: No diretório de instalação DbVisualizer existe um diretório .install4j, Neste diretório crie um arquivo chamado pref_jre.cfg se ele ainda não existir, Abra o arquivo em um editor de texto, Adicione o caminho completo para o diretório raiz para a instalação do Java você deseja usar. Exemplo: C: \ Arquivos de programas \ Java \ jre7

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

Se você está começando acima de erro depois de instalar o java 7 em dbviz em seguida, adicione Ambiente variabbles como: 'DBVIS_JAVA_HOME' como um 'Nome da variável' e caminho java como por ex. "C: \ SWDTOOLS \ IBM \ RAD85 \ runtimes \ base_v7 \ java"

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top