我们有一个 Java Swing 客户端应用程序。它作为 Java Web Start 小程序和 install4j 安装程序安装。
由于 Apple 发布了最新的 Java 6 升级,我们的应用程序在安装程序和 Web Start 版本都显示登录对话框后立即卡住。我们禁用了对话框,应用程序在启动后仍然卡住了。我们还尝试使用不同的外观和感觉,因为有一些报告说这解决了问题,但没有帮助。
我们目前怀疑这是此版本 JRE 中与 Swing 相关的某种错误。
我们在 Oracle 的 1.7.0_25 JRE 上没有这个问题。
我们知道这个更新引起了很多问题,有没有人找到解决这个问题的方法?
这是 EDT 线程堆栈跟踪的最后一部分:
"AWT-EventQueue-1" prio=8 tid=000000002a1abc00 nid=0xb1d3f000 in Object.wait() [00000000b1d3d000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:485)
at java.awt.EventQueue.getNextEvent(EventQueue.java:558)
- locked <000000000686af80> (a java.awt.EventQueue)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:263)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:205)
at java.awt.Dialog$1.run(Dialog.java:1049)
at java.awt.Dialog$3.run(Dialog.java:1101)
at java.security.AccessController.doPrivileged(Native Method)
at java.awt.Dialog.show(Dialog.java:1099)
at java.awt.Component.show(Component.java:1615)
at java.awt.Component.setVisible(Component.java:1567)
at java.awt.Window.setVisible(Window.java:843)
at java.awt.Dialog.setVisible(Dialog.java:984)
苹果最新更新信息链接:http:
//support.apple.com/kb/HT5797
根据发行说明:
Java 1.6.0_45 中存在多个漏洞,其中最严重的漏洞可能允许不受信任的 Java 小程序在 Java 沙箱之外执行任意代码。访问包含恶意制作的不受信任的 Java 小程序的网页可能会导致以当前用户的权限执行任意代码。这些问题已通过更新到 Java 版本 1.6.0_51 得到解决