SWT-приложение не запускается под Ubuntu

503
16 января 2017, 19:52

Пытаюсь портировать десктопное SWT-приложение на Ubuntu. Загрузил Eclipse Neon (6.4.2) для Ubuntu и swt-4.6.2-gtk-linux-x86_64.zip, настрроил путь к библиотеке в project build path, чтобы он указывал на swt.jar из загруженного zip-файла.
Eclipse работает нормально, приложение компилируется, но падает при попытке выполнить следующую строку кода:

    Display display = Display.getDefault();

Это самый первый вызов SWT в программе.
Eclipse пишет на консоль такой сообщение:

(SWT:3351): GLib-GObject-WARNING **: cannot register existing type 'GdkDisplayManager'
(SWT:3351): GLib-CRITICAL **: g_once_init_leave: assertion 'result != 0' failed
(SWT:3351): GLib-GObject-CRITICAL **: g_object_new: assertion 'G_TYPE_IS_OBJECT (object_type)' failed
(SWT:3351): GLib-GObject-WARNING **: invalid (NULL) pointer instance
(SWT:3351): GLib-GObject-CRITICAL **: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
(SWT:3351): GLib-GObject-WARNING **: invalid (NULL) pointer instance
(SWT:3351): GLib-GObject-CRITICAL **: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
(SWT:3351): GLib-GObject-WARNING **: cannot register existing type 'GdkDisplay'
(SWT:3351): GLib-CRITICAL **: g_once_init_leave: assertion 'result != 0' failed
(SWT:3351): GLib-GObject-CRITICAL **: g_type_register_static: assertion 'parent_type > 0' failed
(SWT:3351): GLib-CRITICAL **: g_once_init_leave: assertion 'result != 0' failed
(SWT:3351): GLib-GObject-CRITICAL **: g_object_new: assertion 'G_TYPE_IS_OBJECT (object_type)' failed
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x00007f729ae932b7, pid=3351, tid=0x00007f72e24aa700
#
# JRE version: Java(TM) SE Runtime Environment (8.0_111-b14) (build 1.8.0_111-b14)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.111-b14 mixed mode linux-amd64 compressed oops)
# Problematic frame:
# C  [libgdk-x11-2.0.so.0+0x4e2b7]  gdk_display_open+0x57
#

Ubuntu 16.04 LTS. Под Windows приложение работает нормально. Странно, но собранное под Windows приложение (в Jar со всеми нужными версиями SWT и jar-in-jar loader'ом) дважды запустилось на Ubuntu (не вполне нормально, но это естественно - нужна некоторая адаптация конкретно под GTK), а третий и последующие разы - такое же падение с таким же сообщением. Перезагрузка Ubuntu и SWT_GTK3=0 ничего не меняют. В чем может быть причина? Куда примерно хотя бы рыть? (я в линуксах совершенный новичок). PS Ubuntu работает в Hiper-V под W2008, если это может иметь отношение к делу ...

READ ALSO
Приложение для заказа товаров [требует правки]

Приложение для заказа товаров [требует правки]

Реализовать программу заказа товаровКак реализовать само приложение, знаю

297
Java, апплеты, графика 2d [требует правки]

Java, апплеты, графика 2d [требует правки]

Задача: Определение взаимного расположение точек, те

292
Как сохранять последние действия?

Как сохранять последние действия?

Всем привет и доброго дня!

308
java Сериализация

java Сериализация

Добрый деньИзучаем сериализацию

306