我正在编写一个应用程序,它使用Substance外观和感觉以及JColorChooser。这在Java 6上工作得很好,但在Java 7上尝试时,它真的不是JColorChooser的:
java.lang.NullPointerException
at org.pushingpixels.substance.internal.ui.SubstanceListUI$SubstanceListSelectionListener$1.run(SubstanceListUI.java:135)我猜这与Java7中引入的新JColorChooser有关,而这一实质在某种程度上与当前的Java绑定在一起。然而,除了编写我自己的颜色选择器之外,有没有人知道的解决这个问题的好方法?我怀疑(希望) substance将在适当的时候进行更新以解决这个问题,但是在Java 7发布之前,我想尝试一下Java 7早期构建中的一些新特性。
不知何故,我怀疑答案是否定的,但如果有一个快速的修复/补丁(我找不到),它将是有用的!
发布于 2011-04-01 12:20:41
这是一个有趣的关于"Bug兼容性“的研究。如果颜色设置为null,并且您尝试从颜色选择器获取颜色,则会产生NullPointerException。Kirill预料到了这一点,并将其捕获到try/catch块中。然而,在Java 7中,它们从该方法返回null,而不是抛出NPE。
大约有三个代码片段需要更改:
https://github.com/Insubstantial/insubstantial/commit/0f01ae676c6f56d6879862a911ad03caeafabc52
在接下来的一周左右,我将发布我的第一个非实质性的发行版,其中将包括这个修复。
https://stackoverflow.com/questions/5036728
复制相似问题