2009-02-25 77 views
1

为什么我的Swing应用程序在Ubuntu 8.10和Sun JDK 6上使用Netbeans 6.5时没有关闭。即使是从Netbeans网站下载的Netbeans教程也是如此。当我关闭应用程序时,我留下了一个死角。然后我必须手动杀死进程。它来了,但我无法弄清楚是什么触发了这种行为。当应用程序退出时,为什么我的Swing应用程序窗口间歇性地不关闭?

我也从命令行终端使用openjdk(6b12-0ubuntu6.1)和sun-java(6-10-0ubuntu2)运行我的应用程序,仍然没有运气。我已经注意到,当它试图关闭netbeans后运行netbeans仍然显示应用程序运行和手动杀死进程后,我的netbeans日志打印“Java结果:137”

更新-4Mar:我也试过升级到Sun JDK 6u12和Netbeans 6.7m2。但仍然没有运气。

Update - 4Mar:好的,经过进一步测试,我发现这种行为在我将JPA添加到我的应用程序后立即启动。这就解释了为什么NetBeans网站上的JPA教程示例也是如此。我已经尝试编写一个ExitListener来首先关闭EntityManager,但没有运气。如果我从我的表单面板中删除EntityManager,查询和列表,应用程序会再次正常关闭。

回答

0

这是由于使用“系统默认”或“GTKLookAndFeel”外观造成的。我切换到“NimbusLookAndFeel”,问题消失。

我已经尝试过所有建议,包括Netbeans 6.7和Java 6.12。

仍然不清楚为什么这会发生在Ubuntu 8.10上。

1

确保你调用了setDefaultCLoseOperation(JFrame.EXIT_ON_CLOSE);

0

您使用的是什么次要版本的Java 6? 我在更新10我认为和Ubuntu 8.10有很多问题,升级到.12帮助了很多。

+0

我也在10。我要去做升级,看看它是否有效。我肯定这可能只是伎俩。感谢名单 – Dupdroid 2009-02-25 22:39:45

相关问题