创建JSplitPane时获取java.lang.ClassCastException:javax.swing.KeyStroke
在使用JDK1.5.0_08初始化中的JSplitPane时,我遇到了一个随机的不可复制错误。请注意,这种情况并非每次都会发生,但大约有80%的情况会发生:创建JSplitPane时获取java.lang.ClassCastException:javax.swing.KeyStroke,java,swing,jsplitpane,Java,Swing,Jsplitpane,在使用JDK1.5.0_08初始化中的JSplitPane时,我遇到了一个随机的不可复制错误。请注意,这种情况并非每次都会发生,但大约有80%的情况会发生: 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
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)
...
线程“AWT-EventQueue-0”java.lang.ClassCastException中的异常:javax.swing.KeyStroke
比较(TreeMap.java:1093)
位于java.util.TreeMap.put(TreeMap.java:465)
添加(TreeSet.java:210)
位于javax.swing.plaf.basic.BasicSplitPaneUI.installDefaults(BasicSplitPaneUI.java:364)
位于javax.swing.plaf.basic.BasicSplitPaneUI.installUI(BasicSplitPaneUI.java:300)
位于javax.swing.JComponent.setUI(JComponent.java:652)
位于javax.swing.JSplitPane.setUI(JSplitPane.java:350)
位于javax.swing.JSplitPane.updateUI(JSplitPane.java:378)
位于javax.swing.JSplitPane(JSplitPane.java:332)
位于javax.swing.JSplitPane(JSplitPane.java:287)
...
想法?我已经尝试清理和重建我的项目,以尽量减少损坏类文件的可能性
Edit#1See-似乎是JDK的一个bug。有什么已知的解决办法吗?bug条目页面上没有列出任何错误。在bugs.sun.com上进行了一些谷歌搜索后,这看起来可能是一个JDK错误,它只在JDK 6中修复
请参见当我升级java verion和db visualizer dint支持jre7时,引发了相同的异常。自从 针对Windows和Linux/UNIX的DbVisualizer 8.0引入了对Java 7的支持 DbVisualizer 9.1中引入了对Mac OS X上Java 7的支持 因此,对我有效的解决方案是: Windows/Unix/Linux: 在DbVisualizer安装目录中有一个.install4j目录, 在此目录中创建一个名为pref_jre.cfg的文件(如果该文件尚不存在), 在文本编辑器中打开文件, 为要使用的Java安装添加根目录的完整路径。 示例:C:\Program Files\Java\jre7
java.lang.ClassCastException: javax.swing.KeyStroke cannot be cast to java.lang.Comparable....
如果在dbviz中安装Java7后出现上述错误
然后添加环境变量,如:
“DBVIS_JAVA_HOME”作为“变量名”和类似JAVA的路径
例如“C:\SWDTOOLS\IBM\RAD85\runtimes\base\u v7\java”