Почему окна приложений Swing периодически не закрываются при выходе из приложения? - PullRequest
1 голос
/ 25 февраля 2009

Почему мои приложения Swing не закрываются при использовании Netbeans 6.5 в Ubuntu 8.10 с Sun JDK 6. Даже учебные пособия по Netbeans, загруженные с веб-сайта Netbeans, делают то же самое. Когда я закрываю приложение, у меня остается мертвое окно. Затем я должен вручную убить процесс. Это приходит и уходит, но я не могу понять, что вызывает это поведение.

Я также запускал свои приложения из терминала командной строки, используя openjdk (6b12-0ubuntu6.1) и sun-java (6-10-0ubuntu2), но все же не повезло. Я заметил, что при запуске через netbeans после попытки закрытия netbeans все еще показывает приложение как работающее и после ручного завершения процесса мой журнал netbeans выводит «Java Result: 137»

Обновление - 4 марта: я также пытался обновить Sun JDK 6u12 и NetBeans 6,7 м2. Но все равно не повезло.

Обновление - 4 марта: Хорошо, после дальнейшего тестирования я обнаружил, что это поведение начинается, как только я добавляю JPA в свое приложение. Это объясняет, почему примеры учебника по JPA на веб-сайте netbeans также делают то же самое. Я попытался написать ExitListener, чтобы сначала закрыть EntityManager, но пока не повезло. Если я удаляю EntityManager, Query и List из моей панели форм, приложения снова закрываются должным образом.

Ответы [ 3 ]

1 голос
/ 25 февраля 2009

убедитесь, что вы вызываете setDefaultCLoseOperation (JFrame.EXIT_ON_CLOSE);

0 голосов
/ 04 мая 2009

Это вызвано использованием внешнего вида «System Default» или «GTKLookAndFeel». Я переключился на «NimbusLookAndFeel», и проблема исчезла.

Я испробовал все предложения, включая Netbeans 6.7 и Java 6.12.

До сих пор неясно, почему это происходит в Ubuntu 8.10.

0 голосов
/ 25 февраля 2009

Какую минорную версию Java 6 вы используете? Я думаю, я был на обновлении 10, и у меня было много проблем с Ubuntu 8.10, обновление до .12 очень помогло.

...